@envive-ai/react-hooks 0.1.2 → 0.1.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.
- package/dist/adapters/amplitude/index.cjs +8 -8
- package/dist/adapters/amplitude/index.d.cts +5 -3
- package/dist/adapters/amplitude/index.d.ts +5 -3
- package/dist/adapters/amplitude/index.js +5 -5
- package/dist/api-B2euFL-5.cjs +2 -1
- package/dist/api-XRr_lAG6.js +2 -1
- package/dist/application/config/index.cjs +14 -5
- package/dist/application/config/index.d.cts +2 -1
- package/dist/application/config/index.d.ts +2 -1
- package/dist/application/config/index.js +14 -5
- package/dist/application/models/graphql/index.cjs +7 -7
- package/dist/application/models/graphql/index.d.cts +1 -1
- package/dist/application/models/graphql/index.d.ts +1 -1
- package/dist/application/models/graphql/index.js +5 -5
- package/dist/application/models/guards/api/index.d.cts +2 -2
- package/dist/application/models/guards/api/index.d.ts +2 -2
- package/dist/application/models/index.cjs +49 -49
- package/dist/application/models/index.d.cts +8 -9
- package/dist/application/models/index.d.ts +8 -9
- package/dist/application/models/index.js +5 -5
- package/dist/application/models/utilityTypes/index.d.cts +1 -1
- package/dist/application/models/utilityTypes/index.d.ts +1 -1
- package/dist/application/models/variantInfo/index.d.cts +1 -1
- package/dist/application/models/variantInfo/index.d.ts +1 -1
- package/dist/application/service/customerService/index.cjs +1 -1
- package/dist/application/service/customerService/index.d.cts +2 -2
- package/dist/application/service/customerService/index.d.ts +2 -2
- package/dist/application/service/customerService/index.js +1 -1
- package/dist/application/service/index.cjs +30 -750
- package/dist/application/service/index.d.cts +14 -22
- package/dist/application/service/index.d.ts +14 -22
- package/dist/application/service/index.js +7 -722
- package/dist/application/utils/index.cjs +32 -32
- package/dist/application/utils/index.d.cts +13 -13
- package/dist/application/utils/index.d.ts +11 -11
- package/dist/application/utils/index.js +5 -5
- package/dist/atomStore-B1cgmbP0.js +32 -0
- package/dist/atomStore-JwGb7pcy.cjs +58 -0
- package/dist/atoms/app/index.cjs +11 -11
- package/dist/atoms/app/index.d.cts +11 -11
- package/dist/atoms/app/index.d.ts +11 -11
- package/dist/atoms/app/index.js +5 -5
- package/dist/atoms/atomStore/index.cjs +1 -2
- package/dist/atoms/atomStore/index.d.cts +2 -1
- package/dist/atoms/atomStore/index.d.ts +2 -1
- package/dist/atoms/atomStore/index.js +1 -2
- package/dist/atoms/chat/index.cjs +35 -35
- package/dist/atoms/chat/index.d.cts +37 -37
- package/dist/atoms/chat/index.d.ts +10 -10
- package/dist/atoms/chat/index.js +5 -5
- package/dist/atoms/globalSearch/index.cjs +1 -1
- package/dist/atoms/globalSearch/index.d.cts +7 -6
- package/dist/atoms/globalSearch/index.d.ts +7 -6
- package/dist/atoms/globalSearch/index.js +1 -1
- package/dist/atoms/org/index.cjs +32 -35
- package/dist/atoms/org/index.d.cts +32 -53
- package/dist/atoms/org/index.d.ts +31 -52
- package/dist/atoms/org/index.js +6 -7
- package/dist/atoms/search/index.cjs +36 -38
- package/dist/atoms/search/index.d.cts +9 -10
- package/dist/atoms/search/index.d.ts +9 -10
- package/dist/atoms/search/index.js +5 -7
- package/dist/bandolier-B76-OE75.cjs +1230 -0
- package/dist/bandolier-DRn_x1g1.js +1230 -0
- package/dist/carpe-kHi4RLB5.cjs +608 -0
- package/dist/carpe-qrSU99gq.js +606 -0
- package/dist/{chat-CCgyDehy.cjs → chat-BgONoYU7.cjs} +2 -1
- package/dist/chat-CLJ4NWcN.js +26 -0
- package/dist/{components-CScS7Ii-.cjs → components-BKZbet67.cjs} +2 -1
- package/dist/components-CV1fhAkj.js +11 -0
- package/dist/config/locators/components/chat/index.cjs +1 -1
- package/dist/config/locators/components/chat/index.d.cts +1 -1
- package/dist/config/locators/components/chat/index.d.ts +1 -1
- package/dist/config/locators/components/chat/index.js +1 -1
- package/dist/config/locators/components/chat/variants/index.cjs +2 -1
- package/dist/config/locators/components/chat/variants/index.d.cts +2 -1
- package/dist/config/locators/components/chat/variants/index.d.ts +2 -1
- package/dist/config/locators/components/chat/variants/index.js +2 -1
- package/dist/config/locators/components/index.cjs +1 -1
- package/dist/config/locators/components/index.d.cts +1 -1
- package/dist/config/locators/components/index.d.ts +1 -1
- package/dist/config/locators/components/index.js +1 -1
- package/dist/config/locators/components/search/index.cjs +2 -1
- package/dist/config/locators/components/search/index.d.cts +2 -1
- package/dist/config/locators/components/search/index.d.ts +2 -1
- package/dist/config/locators/components/search/index.js +2 -1
- package/dist/config/locators/index.cjs +4 -4
- package/dist/config/locators/index.d.cts +4 -3
- package/dist/config/locators/index.d.ts +4 -3
- package/dist/config/locators/index.js +4 -4
- package/dist/contexts/index.cjs +10 -13
- package/dist/contexts/index.d.cts +41 -22
- package/dist/contexts/index.d.ts +41 -22
- package/dist/contexts/index.js +6 -12
- package/dist/contexts-CQDwe3rK.cjs +14333 -0
- package/dist/contexts-e2sM-B9g.js +12919 -0
- package/dist/coterie-mMirPcHP.js +240 -0
- package/dist/coterie-yQ-_JXSw.cjs +240 -0
- package/dist/customerService-BG1uNZZ1.cjs +36 -0
- package/dist/customerService-BHQRnLhC.js +23 -0
- package/dist/custservice-types-C83itZmy.cjs +35 -0
- package/dist/custservice-types-DPQ-4TI6.js +23 -0
- package/dist/default-8Jfv8ehQ.cjs +199 -0
- package/dist/default-C8PQf-38.js +176 -0
- package/dist/default-LukSiCz1.js +4 -0
- package/dist/default-rJSJ887P.cjs +4 -0
- package/dist/divIds-CWkntTsx.js +23 -0
- package/dist/{divIds-CFyAjjp3.cjs → divIds-DEL_-qU0.cjs} +2 -1
- package/dist/dreamlandBaby-DHltv12Z.cjs +347 -0
- package/dist/dreamlandBaby-cG0HM9bt.js +347 -0
- package/dist/{embedded-BlXJUbik.cjs → embedded--2L0F4b5.cjs} +2 -1
- package/dist/embedded-C5uJqmuD.js +23 -0
- package/dist/entrypoints-CNUvSgnk.js +7 -0
- package/dist/entrypoints-DM9Sm18O.cjs +19 -0
- package/dist/events/index.d.cts +2 -1
- package/dist/events/index.d.ts +2 -1
- package/dist/events-ClCDFK7t.js +2 -1
- package/dist/events-Da7gpmGv.cjs +2 -1
- package/dist/featureFlagService-5wdmW02z.d.ts +18 -0
- package/dist/featureFlagService-DaelrXEk.d.cts +18 -0
- package/dist/fiveCbd-Cvnwh03g.cjs +614 -0
- package/dist/fiveCbd-DhYMlsf9.js +614 -0
- package/dist/forLoveAndLemons-C8DuUexW.js +666 -0
- package/dist/forLoveAndLemons-DR6a1zjJ.cjs +668 -0
- package/dist/{globalSearch-hxbXekus.cjs → globalSearch-BTeZxvk1.cjs} +2 -1
- package/dist/globalSearch-b0wC7ZEO.js +14 -0
- package/dist/greenpan-B4Pu65kV.js +398 -0
- package/dist/greenpan-BL5p6j7f.cjs +398 -0
- package/dist/grooveLife-DjKWHoN3.cjs +343 -0
- package/dist/grooveLife-JK0TyaPz.js +343 -0
- package/dist/homegrownCannabis-DxqSDkmS.js +411 -0
- package/dist/homegrownCannabis-ZnfCqW-m.cjs +411 -0
- package/dist/hooks/index.cjs +11 -11
- package/dist/hooks/index.d.cts +30 -21
- package/dist/hooks/index.d.ts +30 -21
- package/dist/hooks/index.js +6 -12
- package/dist/index-BTK5uzs6.d.cts +98 -0
- package/dist/index-BfuO9b0Q.d.ts +749 -0
- package/dist/index-BzgkfbNO.d.cts +228 -0
- package/dist/index-C62lPpy4.d.cts +25 -0
- package/dist/index-CExtydIH.d.ts +9 -0
- package/dist/index-CKKkTsms.d.ts +39 -0
- package/dist/index-CNsGWfS6.d.cts +749 -0
- package/dist/index-CYtsPztZ.d.cts +203 -0
- package/dist/index-C_C0tLeD.d.ts +203 -0
- package/dist/index-ClJ0nMsR.d.cts +184 -0
- package/dist/index-Cx9e-fRi.d.ts +184 -0
- package/dist/index-D2VaMPA3.d.ts +98 -0
- package/dist/index-D46Rd0io.d.cts +39 -0
- package/dist/index-DFL1dIT_.d.ts +7 -0
- package/dist/index-DPx8s5YH.d.ts +25 -0
- package/dist/index-Dxpscrvz.d.ts +228 -0
- package/dist/index-MFbPQ8Ji.d.ts +95 -0
- package/dist/index-VSFakgAI.d.cts +95 -0
- package/dist/index-jBATkcc_.d.cts +9 -0
- package/dist/index-zZjcds15.d.cts +7 -0
- package/dist/interceptors/index.cjs +7 -8
- package/dist/interceptors/index.d.cts +10 -10
- package/dist/interceptors/index.d.ts +10 -10
- package/dist/interceptors/index.js +5 -6
- package/dist/jackArcher-CXf_IAmC.js +728 -0
- package/dist/jackArcher-mGkojXek.cjs +728 -0
- package/dist/jordanCraig-BvCvPRoR.js +1787 -0
- package/dist/jordanCraig-Dv8pVCiS.cjs +1787 -0
- package/dist/kindredBravely-UQP7wiNu.cjs +491 -0
- package/dist/kindredBravely-X8F_LNph.js +491 -0
- package/dist/kutFromTheKloth-BhYKk3CN.cjs +370 -0
- package/dist/kutFromTheKloth-D1xsTSJr.js +370 -0
- package/dist/larryAndSerges-1411NuZa.cjs +262 -0
- package/dist/larryAndSerges-DVIRLItu.js +262 -0
- package/dist/leapsAndRebounds-BJ8mwr33.js +361 -0
- package/dist/leapsAndRebounds-UcP9EJVO.cjs +361 -0
- package/dist/logger-Dln20ans.cjs +2 -1
- package/dist/logger-pdEEY8T2.js +2 -1
- package/dist/longevityrx-BFSv9GF5.cjs +321 -0
- package/dist/longevityrx-Cp6wleWr.js +321 -0
- package/dist/lookOptic-BGhU4910.js +283 -0
- package/dist/lookOptic-KieSqskd.cjs +283 -0
- package/dist/mantraBrand-CHQw-0nw.cjs +751 -0
- package/dist/mantraBrand-DrqG9uqO.js +751 -0
- package/dist/medterra-CLG6Co1C.cjs +584 -0
- package/dist/medterra-D8ZX9NZC.js +584 -0
- package/dist/modells-BzyPwN2m.cjs +485 -0
- package/dist/modells-CAfqOCW4.js +485 -0
- package/dist/nodeSelector-B3bPtEjX.d.cts +31 -0
- package/dist/nodeSelector-BiCDowlK.d.ts +31 -0
- package/dist/orgConfigResults--dAwtw3W.d.ts +881 -0
- package/dist/orgConfigResults-BL0XBA6x.d.cts +881 -0
- package/dist/pressedFloral-DULBuQwR.cjs +662 -0
- package/dist/pressedFloral-Dp-7Fk3S.js +662 -0
- package/dist/search-filter-types-BNTLVXqQ.d.cts +102 -0
- package/dist/search-filter-types-DkmH1TxJ.d.ts +102 -0
- package/dist/skinPerfection-BxuYCeJX.js +335 -0
- package/dist/skinPerfection-Cd3XZ6By.cjs +335 -0
- package/dist/snapSupplements-Bf6htPM0.js +286 -0
- package/dist/snapSupplements-ZFnXyMuZ.cjs +286 -0
- package/dist/socialProofClasses-DdzG1tZy.js +10 -0
- package/dist/socialProofClasses-ky69yppk.cjs +40 -0
- package/dist/spanx-CwDPQaGj.js +662 -0
- package/dist/spanx-Cyd4qDlK.cjs +664 -0
- package/dist/spanxStaging-D43nyAGy.js +846 -0
- package/dist/spanxStaging-ijbYnHzr.cjs +849 -0
- package/dist/suggestionBarV2-types-CwOXzIKq.js +10 -0
- package/dist/{suggestionBarV2-types-DG3Ekk44.cjs → suggestionBarV2-types-Dc4-zJlV.cjs} +2 -1
- package/dist/supergoop-BnbFG7hm.cjs +338 -0
- package/dist/supergoop-CY043wIg.js +336 -0
- package/dist/test-types-CXVJxTeu.d.ts +40 -0
- package/dist/test-types-CuOq25VT.d.cts +40 -0
- package/dist/types/index.cjs +2 -2
- package/dist/types/index.d.cts +3 -3
- package/dist/types/index.d.ts +3 -3
- package/dist/types/index.js +2 -2
- package/dist/types-BF_CJeck.js +177 -0
- package/dist/types-CD4LFta-.d.cts +33 -0
- package/dist/types-CNH4sfF-.cjs +231 -0
- package/dist/types-DBdI0j89.d.ts +33 -0
- package/dist/uniqueVintage-Cui74mlJ.js +1212 -0
- package/dist/uniqueVintage-R2Jcu1y1.cjs +1214 -0
- package/dist/variant-CKVRF2-W.d.ts +13 -0
- package/dist/variant-raYuOP4L.d.cts +13 -0
- package/dist/venaCbd-o5_vOp4e.js +366 -0
- package/dist/venaCbd-r-IxEVc1.cjs +366 -0
- package/dist/westonJonBoucher-C95EuCl-.js +423 -0
- package/dist/westonJonBoucher-DjGEW3ZB.cjs +423 -0
- package/dist/wineEnthusiast-DeTFY8Gm.js +941 -0
- package/dist/wineEnthusiast-DvfcV5B3.cjs +941 -0
- package/dist/wolfMattress-6xPfOJt3.js +373 -0
- package/dist/wolfMattress-BjGnGKjP.cjs +373 -0
- package/dist/wolfTactical-Bi3WZu0m.cjs +350 -0
- package/dist/wolfTactical-C_F9-oPX.js +350 -0
- package/package.json +1 -1
- package/src/adapters/amplitude/amplitudeAdapter.ts +32 -9
- package/src/adapters/spiffy/commerce/api.ts +17 -8
- package/src/adapters/spiffy/commerce/graphql.ts +16 -5
- package/src/application/config/generalStaticConfig.ts +5 -2
- package/src/application/models/api/orgConfigResults.ts +6 -2
- package/src/application/models/validators/validateGraphQLColorsConfig.ts +23 -21
- package/src/application/service/cdnService.ts +4 -2
- package/src/application/service/index.ts +0 -1
- package/src/application/service/pageVariantService.ts +5 -5
- package/src/application/service/searchService.ts +9 -2
- package/src/application/service/windowChatToggleService.ts +28 -19
- package/src/application/service/windowFrontendConfigService.ts +7 -4
- package/src/atoms/app/index.ts +26 -17
- package/src/atoms/app/variant.ts +1 -0
- package/src/atoms/chat/messageQueue.ts +1 -1
- package/src/atoms/envive/enviveConfig.ts +81 -0
- package/src/atoms/org/graphqlConfig.ts +29 -11
- package/src/atoms/org/merchantCss.ts +114 -0
- package/src/atoms/org/org.ts +101 -64
- package/src/atoms/org/orgPageConfig.ts +9 -6
- package/src/atoms/org/orgUIConfig.ts +22 -9
- package/src/atoms/search/chatSearch.ts +85 -67
- package/src/contexts/chatContext.tsx +4 -1
- package/src/contexts/enviveConfigContext.tsx +37 -26
- package/src/contexts/enviveCssContext.tsx +20 -0
- package/src/contexts/index.ts +2 -0
- package/src/contexts/orgConfigContext.tsx +106 -0
- package/src/contexts/systemSettingsContext.tsx +22 -9
- package/src/contexts/types.ts +12 -9
- package/src/hooks/index.ts +1 -0
- package/src/hooks/useSearch.tsx +16 -9
- package/src/hooks/utils.ts +1 -1
- package/src/interceptors/useFormEscalation.ts +26 -9
- package/src/types/search-filter-types.ts +7 -7
- package/src/types.ts +0 -2
- package/dist/api-CxGedDxj.cjs +0 -5057
- package/dist/api-NJEaveju.js +0 -4113
- package/dist/atomStore-BFtpknLM.js +0 -31
- package/dist/atomStore-CeJm9Llb.cjs +0 -57
- package/dist/bandolier-C7PAIw02.js +0 -1230
- package/dist/bandolier-oMkFDJMF.cjs +0 -1230
- package/dist/carpe-C0ccKuR9.cjs +0 -608
- package/dist/carpe-DFc78_lJ.js +0 -606
- package/dist/cdnService-DvDSpfVJ.js +0 -18
- package/dist/cdnService-dJU3sHpF.cjs +0 -23
- package/dist/chat-Dk6KPb1K.js +0 -25
- package/dist/components-DAQxVIn9.js +0 -10
- package/dist/contexts-DO75-Kmx.js +0 -7152
- package/dist/contexts-iAzSvZjb.cjs +0 -7331
- package/dist/coterie-BGT8hqFR.js +0 -240
- package/dist/coterie-Cp9FAJTQ.cjs +0 -240
- package/dist/customerService-CUyZzowx.js +0 -22
- package/dist/customerService-DqPw_XKf.cjs +0 -35
- package/dist/custservice-types-D8Npo-5Z.js +0 -22
- package/dist/custservice-types-E9_OSaZ7.cjs +0 -34
- package/dist/default-BAXPatxf.cjs +0 -198
- package/dist/default-BR3225LZ.js +0 -4
- package/dist/default-DR6YjE9B.cjs +0 -4
- package/dist/default-wf_IORgo.js +0 -175
- package/dist/divIds-BWvq-i6I.js +0 -22
- package/dist/dreamlandBaby-BzuMvUFS.cjs +0 -347
- package/dist/dreamlandBaby-DZvM81LQ.js +0 -347
- package/dist/embedded-C1jvFj3v.js +0 -22
- package/dist/entrypoints-CmmOszXO.js +0 -6
- package/dist/entrypoints-fowCLUT2.cjs +0 -18
- package/dist/enviveConfigContext-CUGLpPGU.js +0 -34
- package/dist/enviveConfigContext-Dfr2VH6u.cjs +0 -48
- package/dist/featureFlagService-CroFRxvD.d.cts +0 -17
- package/dist/featureFlagService-NkJ2fuEj.d.ts +0 -17
- package/dist/featureGates-BMWXU0dS.d.ts +0 -90
- package/dist/featureGates-N_gyHCTn.d.cts +0 -90
- package/dist/fiveCbd-DE-tDY3d.cjs +0 -614
- package/dist/fiveCbd-HNBPqPtX.js +0 -614
- package/dist/forLoveAndLemons-BKmJJ9pq.js +0 -666
- package/dist/forLoveAndLemons-BeVEBOiu.cjs +0 -668
- package/dist/frontendConfig-KeNqU1wa.d.cts +0 -790
- package/dist/frontendConfig-cPvCTWm6.d.ts +0 -790
- package/dist/globalSearch-BC0rOX3E.js +0 -13
- package/dist/greenpan-BX1viAZB.js +0 -398
- package/dist/greenpan-chd3aa5I.cjs +0 -398
- package/dist/grooveLife-CHot3rZw.js +0 -343
- package/dist/grooveLife-DEob7rK0.cjs +0 -343
- package/dist/homegrownCannabis-CoIjcehi.cjs +0 -411
- package/dist/homegrownCannabis-CwkS1qDA.js +0 -411
- package/dist/index-BdNKc2ix.d.cts +0 -8
- package/dist/index-BkhvV8RZ.d.cts +0 -202
- package/dist/index-BrXuc_Ck.d.cts +0 -24
- package/dist/index-C4zjAR1c.d.cts +0 -227
- package/dist/index-CGB6CAmr.d.ts +0 -6
- package/dist/index-CIco0cCQ.d.ts +0 -183
- package/dist/index-COG1kOZG.d.ts +0 -749
- package/dist/index-CVxe7FpL.d.cts +0 -6
- package/dist/index-Cn1SeI5y.d.cts +0 -183
- package/dist/index-Cqg6ltII.d.ts +0 -38
- package/dist/index-CzMrMKx-.d.ts +0 -202
- package/dist/index-DE_7Q8qK.d.ts +0 -94
- package/dist/index-Da0UzyI9.d.ts +0 -24
- package/dist/index-DbWWcYax.d.cts +0 -749
- package/dist/index-DtoVXd6O.d.cts +0 -97
- package/dist/index-JClBRnSX.d.cts +0 -94
- package/dist/index-ghzD_356.d.ts +0 -8
- package/dist/index-hdbCEjYy.d.cts +0 -38
- package/dist/index-luJrHgPN.d.ts +0 -97
- package/dist/index-tfRj22E1.d.ts +0 -227
- package/dist/jackArcher-BA-pkB4A.js +0 -728
- package/dist/jackArcher-bewC0q1T.cjs +0 -728
- package/dist/jordanCraig-B5k9nlAw.cjs +0 -1787
- package/dist/jordanCraig-BsQ1mYbt.js +0 -1787
- package/dist/kindredBravely-BxYkCpGY.js +0 -491
- package/dist/kindredBravely-DsN0fo3s.cjs +0 -491
- package/dist/kutFromTheKloth-BQTCu3ct.cjs +0 -370
- package/dist/kutFromTheKloth-bukOQM3P.js +0 -370
- package/dist/larryAndSerges-D1ecaT5a.js +0 -261
- package/dist/larryAndSerges-bj7fgy9b.cjs +0 -261
- package/dist/leapsAndRebounds-BfneG_0c.cjs +0 -361
- package/dist/leapsAndRebounds-DhNpZETg.js +0 -361
- package/dist/locators-C2DX_nX6.js +0 -1
- package/dist/locators-CUpyd9Wt.cjs +0 -0
- package/dist/longevityrx-CnoGcw0w.js +0 -321
- package/dist/longevityrx-D0goIuX0.cjs +0 -321
- package/dist/lookOptic-C4afLPZP.cjs +0 -283
- package/dist/lookOptic-uJWIKpER.js +0 -283
- package/dist/mantraBrand-8JUlYtCE.cjs +0 -751
- package/dist/mantraBrand-DuwKHM26.js +0 -751
- package/dist/medterra-BQec8rzn.js +0 -584
- package/dist/medterra-DH067P-V.cjs +0 -584
- package/dist/modells-DAgLE2xo.js +0 -485
- package/dist/modells-DUFnLmAz.cjs +0 -485
- package/dist/nodeSelector-DpKXszfU.d.ts +0 -30
- package/dist/nodeSelector-vKB44CDB.d.cts +0 -30
- package/dist/org-C11APG3v.js +0 -63
- package/dist/org-CnHL2I9B.cjs +0 -106
- package/dist/pressedFloral-DVZVfOSQ.cjs +0 -662
- package/dist/pressedFloral-MdbuoRyA.js +0 -662
- package/dist/search-CvHb1M3S.js +0 -542
- package/dist/search-bSYdOBhY.cjs +0 -743
- package/dist/search-filter-types-BsJjrxk0.d.ts +0 -101
- package/dist/search-filter-types-CqaGK3nM.d.cts +0 -101
- package/dist/skinPerfection-BcEWICQN.cjs +0 -335
- package/dist/skinPerfection-bGiYxq1i.js +0 -335
- package/dist/snapSupplements-BXSXTjqF.cjs +0 -286
- package/dist/snapSupplements-D7hHhdC9.js +0 -286
- package/dist/socialProofClasses-BYLiEXpU.cjs +0 -39
- package/dist/socialProofClasses-CkJufEGb.js +0 -9
- package/dist/spanx-5-0yX3iK.js +0 -662
- package/dist/spanx-lUzP6Lva.cjs +0 -664
- package/dist/spanxStaging-HglCMJag.js +0 -846
- package/dist/spanxStaging-hreMR0MS.cjs +0 -849
- package/dist/suggestionBarV2-types-B0RbMStE.js +0 -9
- package/dist/supergoop-C9DDT3lY.js +0 -335
- package/dist/supergoop-CkjtuRck.cjs +0 -337
- package/dist/test-types-C9b_OdfO.d.ts +0 -39
- package/dist/test-types-CpKCxk8U.d.cts +0 -39
- package/dist/types-BE4faOO_.d.cts +0 -32
- package/dist/types-BUjohkXp.cjs +0 -230
- package/dist/types-BVsTRyxL.js +0 -176
- package/dist/types-TD8g7LnH.d.ts +0 -32
- package/dist/uniqueVintage-DIMGtYAU.cjs +0 -1214
- package/dist/uniqueVintage-DPWA5Ed6.js +0 -1212
- package/dist/useMessageInterceptor-B-P_rw73.cjs +0 -72
- package/dist/useMessageInterceptor-C2RZM-fo.js +0 -57
- package/dist/variant-BGjOVpY3.d.cts +0 -12
- package/dist/variant-XITncuI3.d.ts +0 -12
- package/dist/venaCbd-B-znfAsl.js +0 -366
- package/dist/venaCbd-BOwOtpOz.cjs +0 -366
- package/dist/westonJonBoucher-CraTzRVt.cjs +0 -423
- package/dist/westonJonBoucher-DCRagGu3.js +0 -423
- package/dist/wineEnthusiast-Bv7umajk.js +0 -941
- package/dist/wineEnthusiast-sVuATrq6.cjs +0 -941
- package/dist/wolfMattress-BUH-Rhov.js +0 -373
- package/dist/wolfMattress-DpVHIEnJ.cjs +0 -373
- package/dist/wolfTactical-BcvF_sy-.cjs +0 -350
- package/dist/wolfTactical-Q14A1fpw.js +0 -350
- package/src/application/service/environmentService.ts +0 -51
- package/src/extension.ts +0 -63
- package/src/initialize.ts +0 -163
- package/src/main.tsx +0 -108
- package/src/merchants/uniqueVintage/views/useUniqueVintageChatSearch.ts +0 -147
- /package/dist/{atomStore-FSZd_20F.js → locators-Dc5ZT0aF.js} +0 -0
- /package/dist/{atomStore-B3tsg6mF.cjs → locators-lQMJj830.cjs} +0 -0
|
@@ -1,29 +1,31 @@
|
|
|
1
|
-
import { ColorMapping, ColorNames } from
|
|
2
|
-
import { isGraphQLColorsConfig } from
|
|
1
|
+
import { ColorMapping, ColorNames } from "src/application/models/colorsConfig";
|
|
2
|
+
import { isGraphQLColorsConfig } from "src/application/models/guards/graphQL/isGraphQLColorsConfig";
|
|
3
3
|
|
|
4
|
-
export const validateGraphQLColorsConfig = (
|
|
4
|
+
export const validateGraphQLColorsConfig = (
|
|
5
|
+
data: unknown
|
|
6
|
+
): ColorMapping | undefined => {
|
|
5
7
|
if (!isGraphQLColorsConfig(data)) {
|
|
6
8
|
return undefined;
|
|
7
9
|
}
|
|
8
10
|
|
|
9
11
|
return {
|
|
10
|
-
[ColorNames.TextPrimary]:
|
|
11
|
-
[ColorNames.TextSecondary]:
|
|
12
|
-
[ColorNames.TextAccent]:
|
|
13
|
-
[ColorNames.TextLink]:
|
|
14
|
-
[ColorNames.TextLight]:
|
|
15
|
-
[ColorNames.BackgroundPrimary]:
|
|
16
|
-
[ColorNames.BackgroundSecondary]:
|
|
17
|
-
[ColorNames.BackgroundSecondaryDark]:
|
|
18
|
-
[ColorNames.BackgroundTertiary]:
|
|
19
|
-
[ColorNames.BackgroundDark]:
|
|
20
|
-
[ColorNames.
|
|
21
|
-
[ColorNames.
|
|
22
|
-
[ColorNames.
|
|
23
|
-
[ColorNames.
|
|
24
|
-
[ColorNames.
|
|
25
|
-
[ColorNames.
|
|
26
|
-
[ColorNames.
|
|
27
|
-
[ColorNames.
|
|
12
|
+
[ColorNames.TextPrimary]: "#000000",
|
|
13
|
+
[ColorNames.TextSecondary]: "#666666",
|
|
14
|
+
[ColorNames.TextAccent]: "#808080",
|
|
15
|
+
[ColorNames.TextLink]: "#4D4D4D",
|
|
16
|
+
[ColorNames.TextLight]: "#FFFFFF",
|
|
17
|
+
[ColorNames.BackgroundPrimary]: "#999999",
|
|
18
|
+
[ColorNames.BackgroundSecondary]: "#F2F2F2",
|
|
19
|
+
[ColorNames.BackgroundSecondaryDark]: "#E5E5E5",
|
|
20
|
+
[ColorNames.BackgroundTertiary]: "#E5E5E5",
|
|
21
|
+
[ColorNames.BackgroundDark]: "#000000",
|
|
22
|
+
[ColorNames.BackgroundLight]: "#FFFFFF",
|
|
23
|
+
[ColorNames.BackgroundSaturated]: "#CCCCCC",
|
|
24
|
+
[ColorNames.BorderLight]: "#E5E5E5",
|
|
25
|
+
[ColorNames.BorderMedium]: "#B2B2B2",
|
|
26
|
+
[ColorNames.BorderDark]: "#4D4D4D",
|
|
27
|
+
[ColorNames.BorderOutline]: "#4D4D4D",
|
|
28
|
+
[ColorNames.AccentPrimary]: "#999999",
|
|
29
|
+
[ColorNames.AccentSecondary]: "#B2B2B2",
|
|
28
30
|
};
|
|
29
31
|
};
|
|
@@ -1,8 +1,10 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { getAtomStore } from "src/atoms/atomStore";
|
|
2
|
+
import { cdnUrlAtom } from "src/atoms/envive/enviveConfig";
|
|
2
3
|
|
|
3
4
|
class CdnService {
|
|
4
5
|
static get CDN_URL() {
|
|
5
|
-
const
|
|
6
|
+
const atomStore = getAtomStore();
|
|
7
|
+
const cdnUrl = atomStore.get(cdnUrlAtom);
|
|
6
8
|
return cdnUrl || "https://cdn.spiffy.ai/other";
|
|
7
9
|
}
|
|
8
10
|
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
export * from "./cachingService";
|
|
3
3
|
export * from "./cdnService";
|
|
4
4
|
export * from "./domMutationObserver";
|
|
5
|
-
export * from "./environmentService";
|
|
6
5
|
export * from "./featureFlagService";
|
|
7
6
|
export * from "./kustomerIntegrationService";
|
|
8
7
|
export * from "./localStorageService";
|
|
@@ -34,7 +34,6 @@ import {
|
|
|
34
34
|
UrlResolvingPDPConfig,
|
|
35
35
|
UrlResolvingPLPConfig,
|
|
36
36
|
} from "src/atoms/app/variant";
|
|
37
|
-
import { tellExtensionAboutInjectionError } from "src/extension";
|
|
38
37
|
import { chatAtom, lastAssistantMessageAtom } from "src/atoms/chat";
|
|
39
38
|
import { StringUtils } from "../utils/stringUtils";
|
|
40
39
|
|
|
@@ -339,7 +338,7 @@ class PageVariantService {
|
|
|
339
338
|
const atomStore = getAtomStore();
|
|
340
339
|
const featureFlagService = atomStore.get(featureFlagServiceAtom);
|
|
341
340
|
|
|
342
|
-
return featureFlagService
|
|
341
|
+
return featureFlagService?.isFeatureGateEnabled(featureGate) || false;
|
|
343
342
|
}
|
|
344
343
|
|
|
345
344
|
static getCategory(extractor: CategoryExtractor): PageVisitCategory | null {
|
|
@@ -654,9 +653,10 @@ class PageVariantService {
|
|
|
654
653
|
undefined,
|
|
655
654
|
orgPageConfig.pageVariants
|
|
656
655
|
);
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
)
|
|
656
|
+
// TODO: remove or enable if we decide to support injection in this repo.
|
|
657
|
+
// await tellExtensionAboutInjectionError(
|
|
658
|
+
// new Error("No pagevariantConfig matched")
|
|
659
|
+
// );
|
|
660
660
|
|
|
661
661
|
return undefined;
|
|
662
662
|
};
|
|
@@ -11,7 +11,7 @@ import Logger from "src/application/logging/logger";
|
|
|
11
11
|
import { SessionRestartRequired } from "src/adapters/spiffy/commerce/exceptions/sessionExceptions";
|
|
12
12
|
import { UnsupportedProductException } from "src/adapters/spiffy/commerce/exceptions/unsupportedProductExceptions";
|
|
13
13
|
import { SearchResult, SearchParams } from "../models/api/search";
|
|
14
|
-
import {
|
|
14
|
+
import { baseUrlAtom } from "src/atoms/envive/enviveConfig";
|
|
15
15
|
|
|
16
16
|
const transformProductResponses = (products: SearchResult["products"]) =>
|
|
17
17
|
products.map((data) => ({
|
|
@@ -80,13 +80,20 @@ class SearchService {
|
|
|
80
80
|
if (!SearchService.instance) {
|
|
81
81
|
const atomStore = getAtomStore();
|
|
82
82
|
const apiKey = atomStore.get(apiKeyAtom);
|
|
83
|
+
if (!apiKey) {
|
|
84
|
+
throw new Error(
|
|
85
|
+
"[spiffy-ai] SearchService requires apiKey to be available"
|
|
86
|
+
);
|
|
87
|
+
}
|
|
83
88
|
SearchService.instance = new SearchService(apiKey);
|
|
84
89
|
}
|
|
85
90
|
return SearchService.instance;
|
|
86
91
|
};
|
|
87
92
|
|
|
88
93
|
private constructor(apiKey: string, basePath?: string) {
|
|
89
|
-
const
|
|
94
|
+
const atomStore = getAtomStore();
|
|
95
|
+
|
|
96
|
+
const baseUrl = atomStore.get(baseUrlAtom);
|
|
90
97
|
const path = basePath || baseUrl;
|
|
91
98
|
const config: Configuration = new Configuration({
|
|
92
99
|
accessToken: apiKey,
|
|
@@ -1,12 +1,13 @@
|
|
|
1
|
-
import { useSetAtom } from
|
|
2
|
-
import { useEffect, useRef } from
|
|
3
|
-
import { Message, MessageRole, MessageType } from
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
import {
|
|
1
|
+
import { useSetAtom } from "jotai";
|
|
2
|
+
import { useEffect, useRef } from "react";
|
|
3
|
+
import { Message, MessageRole, MessageType } from "src/application/models";
|
|
4
|
+
import { handleReplyAtom } from "src/atoms/chat";
|
|
5
|
+
import { useChatToggle } from "src/hooks";
|
|
6
|
+
import { v4 as uuid } from "uuid";
|
|
7
|
+
import Logger from "../logging/logger";
|
|
8
|
+
import { ChatElementDisplayLocation } from "../models/chatElementDisplayLocation";
|
|
9
|
+
import { getAtomStore } from "src/atoms/atomStore";
|
|
10
|
+
import { identifyingPrefixAtom } from "src/atoms/envive/enviveConfig";
|
|
10
11
|
|
|
11
12
|
let hasAttachedEnviveChatToggle = false;
|
|
12
13
|
|
|
@@ -20,13 +21,17 @@ export const WindowChatToggleBinder = () => {
|
|
|
20
21
|
const closeChatRef = useRef<(triggerId?: string) => void>();
|
|
21
22
|
const toggleChatRef = useRef<(triggerId?: string) => void>();
|
|
22
23
|
const isOpenRef = useRef<boolean>(hook.isOpen);
|
|
23
|
-
const openChatWithPromptRef =
|
|
24
|
+
const openChatWithPromptRef =
|
|
25
|
+
useRef<(prompt: string, triggerId?: string) => void>();
|
|
24
26
|
|
|
25
27
|
// Keep refs up to date with latest hook/state
|
|
26
28
|
useEffect(() => {
|
|
27
|
-
openChatRef.current = (triggerId?: string) =>
|
|
28
|
-
|
|
29
|
-
|
|
29
|
+
openChatRef.current = (triggerId?: string) =>
|
|
30
|
+
hook.openChat(triggerLocation, triggerId);
|
|
31
|
+
closeChatRef.current = (triggerId?: string) =>
|
|
32
|
+
hook.closeChat(triggerLocation, triggerId);
|
|
33
|
+
toggleChatRef.current = (triggerId?: string) =>
|
|
34
|
+
hook.toggle(triggerLocation, triggerId);
|
|
30
35
|
isOpenRef.current = hook.isOpen;
|
|
31
36
|
openChatWithPromptRef.current = (prompt: string, triggerId?: string) => {
|
|
32
37
|
const message: Message = {
|
|
@@ -46,24 +51,28 @@ export const WindowChatToggleBinder = () => {
|
|
|
46
51
|
// Attach once; wrapper functions call through to refs
|
|
47
52
|
useEffect(() => {
|
|
48
53
|
if (hasAttachedEnviveChatToggle) return;
|
|
49
|
-
const
|
|
54
|
+
const atomStore = getAtomStore();
|
|
55
|
+
const identifyingPrefix = atomStore.get(identifyingPrefixAtom);
|
|
50
56
|
try {
|
|
51
57
|
if (!window[identifyingPrefix]) {
|
|
52
58
|
window[identifyingPrefix] = {} as Window[typeof identifyingPrefix];
|
|
53
59
|
}
|
|
54
|
-
window[identifyingPrefix].openChat = (triggerId?: string) =>
|
|
60
|
+
window[identifyingPrefix].openChat = (triggerId?: string) =>
|
|
61
|
+
openChatRef.current?.(triggerId);
|
|
55
62
|
window[identifyingPrefix].closeChat = (triggerId?: string) =>
|
|
56
63
|
closeChatRef.current?.(triggerId);
|
|
57
64
|
window[identifyingPrefix].toggleChat = (triggerId?: string) =>
|
|
58
65
|
toggleChatRef.current?.(triggerId);
|
|
59
66
|
window[identifyingPrefix].getChatIsOpen = () => !!isOpenRef.current;
|
|
60
|
-
window[identifyingPrefix].openChatWithPrompt = (
|
|
61
|
-
|
|
67
|
+
window[identifyingPrefix].openChatWithPrompt = (
|
|
68
|
+
prompt: string,
|
|
69
|
+
triggerId?: string
|
|
70
|
+
) => openChatWithPromptRef.current?.(prompt, triggerId);
|
|
62
71
|
|
|
63
|
-
Logger.logDebug(
|
|
72
|
+
Logger.logDebug("[spiffy-ai] Chat toggle functions attached");
|
|
64
73
|
hasAttachedEnviveChatToggle = true;
|
|
65
74
|
} catch (e) {
|
|
66
|
-
Logger.logError(
|
|
75
|
+
Logger.logError("[spiffy-ai] Failed to attach Chat toggle functions", e);
|
|
67
76
|
}
|
|
68
77
|
}, []);
|
|
69
78
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import Logger from "src/application/logging/logger";
|
|
2
|
-
import { EnvironmentService } from "src/application/service/environmentService";
|
|
3
2
|
import { applyOverrides, Override } from "src/application/utils/overrides";
|
|
4
3
|
import { getAtomStore } from "src/atoms/atomStore/atomStore";
|
|
4
|
+
import { identifyingPrefixAtom } from "src/atoms/envive/enviveConfig";
|
|
5
5
|
import {
|
|
6
6
|
colorsConfigAtom,
|
|
7
7
|
frontendConfigAtom,
|
|
@@ -16,7 +16,7 @@ import {
|
|
|
16
16
|
} from "src/contexts/types";
|
|
17
17
|
|
|
18
18
|
type CustomizableFrontendConfig = {
|
|
19
|
-
orgUIConfig: OrgUIConfig;
|
|
19
|
+
orgUIConfig: OrgUIConfig | undefined;
|
|
20
20
|
colorsConfig: ColorMapping;
|
|
21
21
|
mountingConfigs: Record<string, WidgetMountingConfig>;
|
|
22
22
|
widgetConfigs: Record<string, WidgetConfig>;
|
|
@@ -40,7 +40,8 @@ class WindowFrontendConfigService {
|
|
|
40
40
|
this.isInitialized = true;
|
|
41
41
|
|
|
42
42
|
try {
|
|
43
|
-
const
|
|
43
|
+
const atomStore = getAtomStore();
|
|
44
|
+
const identifyingPrefix = atomStore.get(identifyingPrefixAtom);
|
|
44
45
|
if (!window[identifyingPrefix]) {
|
|
45
46
|
window[identifyingPrefix] = {} as Window[typeof identifyingPrefix];
|
|
46
47
|
}
|
|
@@ -99,7 +100,9 @@ class WindowFrontendConfigService {
|
|
|
99
100
|
}
|
|
100
101
|
|
|
101
102
|
// Update the atoms with the new frontend config(s)
|
|
102
|
-
|
|
103
|
+
if (currentConfig.orgUIConfig) {
|
|
104
|
+
atomStore.set(orgUIConfigAtom, currentConfig.orgUIConfig);
|
|
105
|
+
}
|
|
103
106
|
atomStore.set(colorsConfigAtom, currentConfig.colorsConfig);
|
|
104
107
|
// Write to the frontendConfigAtom to update the mountingConfigs and widgetConfigs
|
|
105
108
|
// This is the only way to update the mountingConfigs and widgetConfigs
|
package/src/atoms/app/index.ts
CHANGED
|
@@ -1,11 +1,15 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
1
|
+
import {
|
|
2
|
+
ContextEnvEnum,
|
|
3
|
+
ContextSourceEnum,
|
|
4
|
+
} from "@spiffy-ai/commerce-api-client";
|
|
5
|
+
import { atom } from "jotai";
|
|
6
|
+
import { atomWithStorage } from "jotai/utils";
|
|
7
|
+
import { VariantInfo } from "src/application/models";
|
|
8
|
+
import { UserIdentityService } from "src/application/service/userIdentityService";
|
|
9
|
+
import { variantInfoAtom } from "src/atoms/app/variant";
|
|
10
|
+
import { orgIdAtom, orgShortNameAtom } from "src/atoms/org/org";
|
|
11
|
+
import { v4 as uuid } from "uuid";
|
|
12
|
+
import { contextSourceAtom } from "../envive/enviveConfig";
|
|
9
13
|
|
|
10
14
|
export interface AppDetails {
|
|
11
15
|
orgId: string;
|
|
@@ -17,7 +21,7 @@ export interface AppDetails {
|
|
|
17
21
|
variantInfo: VariantInfo;
|
|
18
22
|
}
|
|
19
23
|
|
|
20
|
-
export { variantInfoAtom } from
|
|
24
|
+
export { variantInfoAtom } from "./variant";
|
|
21
25
|
|
|
22
26
|
const internalUserIdAtom = atom<string | undefined>(undefined);
|
|
23
27
|
|
|
@@ -33,25 +37,30 @@ export const userIdAtom = atom(
|
|
|
33
37
|
},
|
|
34
38
|
(_, set, value: string | undefined) => {
|
|
35
39
|
set(internalUserIdAtom, value);
|
|
36
|
-
}
|
|
40
|
+
}
|
|
37
41
|
);
|
|
38
42
|
export const appSourceAtom = atom<ContextSourceEnum>(
|
|
39
|
-
(get): ContextSourceEnum => get(
|
|
43
|
+
(get): ContextSourceEnum => get(contextSourceAtom) ?? ContextSourceEnum.App
|
|
40
44
|
);
|
|
41
45
|
export const envAtom = atom<ContextEnvEnum>(ContextEnvEnum.Dev);
|
|
42
|
-
export const chatIdAtom = atomWithStorage<string>(
|
|
43
|
-
|
|
44
|
-
|
|
46
|
+
export const chatIdAtom = atomWithStorage<string>(
|
|
47
|
+
"v1-spiffy-chat-session-id",
|
|
48
|
+
uuid(),
|
|
49
|
+
undefined,
|
|
50
|
+
{
|
|
51
|
+
getOnInit: true,
|
|
52
|
+
}
|
|
53
|
+
);
|
|
45
54
|
|
|
46
55
|
export const appDetailsAtom = atom(
|
|
47
56
|
(get): AppDetails => ({
|
|
48
|
-
orgId: get(orgIdAtom),
|
|
57
|
+
orgId: get(orgIdAtom) ?? "",
|
|
49
58
|
// TODO: orgShortName should be available when this atom is created
|
|
50
|
-
orgShortName: get(orgShortNameAtom) ??
|
|
59
|
+
orgShortName: get(orgShortNameAtom) ?? "spiffy-ai",
|
|
51
60
|
chatId: get(chatIdAtom),
|
|
52
61
|
userId: get(userIdAtom),
|
|
53
62
|
source: get(appSourceAtom),
|
|
54
63
|
env: get(envAtom),
|
|
55
64
|
variantInfo: get(variantInfoAtom),
|
|
56
|
-
})
|
|
65
|
+
})
|
|
57
66
|
);
|
package/src/atoms/app/variant.ts
CHANGED
|
@@ -71,7 +71,7 @@ export const createResponsePayload = ({
|
|
|
71
71
|
const atomStore = getAtomStore();
|
|
72
72
|
const context = atomStore.get(appDetailsAtom);
|
|
73
73
|
const featureFlagService = atomStore.get(featureFlagServiceAtom);
|
|
74
|
-
const featureFlags = featureFlagService
|
|
74
|
+
const featureFlags = featureFlagService?.getFeatureFlags() || {};
|
|
75
75
|
return {
|
|
76
76
|
id: uuid(),
|
|
77
77
|
context,
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import Logger from "src/application/logging/logger";
|
|
2
|
+
import { atom } from "jotai";
|
|
3
|
+
import { EnviveConfig } from "src/contexts/types";
|
|
4
|
+
import { ContextSourceEnum } from "@spiffy-ai/commerce-api-client";
|
|
5
|
+
import { LocalStorageService } from "src/application/service";
|
|
6
|
+
|
|
7
|
+
const internalEnviveConfigAtom = atom<EnviveConfig | undefined>(undefined);
|
|
8
|
+
|
|
9
|
+
export const enviveConfigAtom = atom(
|
|
10
|
+
(get) => {
|
|
11
|
+
const config = get(internalEnviveConfigAtom);
|
|
12
|
+
Logger.logDebug(
|
|
13
|
+
"enviveConfig.ts: Accessing internalEnviveConfigAtom",
|
|
14
|
+
config
|
|
15
|
+
);
|
|
16
|
+
return config; // Return undefined if not set instead of throwing
|
|
17
|
+
},
|
|
18
|
+
(_, set, value: EnviveConfig) => {
|
|
19
|
+
set(internalEnviveConfigAtom, value);
|
|
20
|
+
}
|
|
21
|
+
);
|
|
22
|
+
|
|
23
|
+
export const amplitudeApiKeyAtom = atom((get) => {
|
|
24
|
+
const config = get(enviveConfigAtom);
|
|
25
|
+
return config?.amplitudeApiKey;
|
|
26
|
+
});
|
|
27
|
+
export const dataResidencyAtom = atom((get) => {
|
|
28
|
+
const config = get(enviveConfigAtom);
|
|
29
|
+
return config?.dataResidency;
|
|
30
|
+
});
|
|
31
|
+
export const envAtom = atom((get) => {
|
|
32
|
+
const config = get(enviveConfigAtom);
|
|
33
|
+
return config?.env;
|
|
34
|
+
});
|
|
35
|
+
export const baseUrlAtom = atom((get) => {
|
|
36
|
+
const config = get(enviveConfigAtom);
|
|
37
|
+
return config?.baseUrl || "https://commerce-api.dev.spiffy.ai";
|
|
38
|
+
});
|
|
39
|
+
export const reactAppNameAtom = atom((get) => {
|
|
40
|
+
const config = get(enviveConfigAtom);
|
|
41
|
+
return config?.reactAppName;
|
|
42
|
+
});
|
|
43
|
+
export const cdnUrlAtom = atom((get) => {
|
|
44
|
+
const config = get(enviveConfigAtom);
|
|
45
|
+
return config?.cdnUrl;
|
|
46
|
+
});
|
|
47
|
+
|
|
48
|
+
export const contextSourceAtom = atom((get) => {
|
|
49
|
+
const config = get(enviveConfigAtom);
|
|
50
|
+
|
|
51
|
+
if (window.IS_STORYBOOK) {
|
|
52
|
+
return ContextSourceEnum.Test;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
if (config?.contextSource) {
|
|
56
|
+
return config.contextSource as ContextSourceEnum;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
const spiffyOnFeatureFlagSet = LocalStorageService.getSpiffyOnFeatureFlag();
|
|
60
|
+
if (spiffyOnFeatureFlagSet === "true") {
|
|
61
|
+
return ContextSourceEnum.Playground;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
return ContextSourceEnum.App;
|
|
65
|
+
});
|
|
66
|
+
|
|
67
|
+
export const orgLevelApiKeyAtom = atom((get) => {
|
|
68
|
+
const config = get(enviveConfigAtom);
|
|
69
|
+
Logger.logDebug("enviveConfig.ts: Accessing orgLevelApiKey", config);
|
|
70
|
+
return config?.orgLevelApiKey;
|
|
71
|
+
});
|
|
72
|
+
export const orgShortNameAtom = atom((get) => {
|
|
73
|
+
const config = get(enviveConfigAtom);
|
|
74
|
+
Logger.logDebug("enviveConfig.ts: Accessing orgShortName", config);
|
|
75
|
+
return config?.orgShortName;
|
|
76
|
+
});
|
|
77
|
+
export const identifyingPrefixAtom = atom((get) => {
|
|
78
|
+
const config = get(enviveConfigAtom);
|
|
79
|
+
Logger.logDebug("enviveConfig.ts: Accessing identifyingPrefix", config);
|
|
80
|
+
return config?.identifyingPrefix || "spiffy";
|
|
81
|
+
});
|
|
@@ -1,27 +1,45 @@
|
|
|
1
|
-
import { atom } from
|
|
2
|
-
import { ColorMapping } from
|
|
3
|
-
import { FrontendConfig } from
|
|
4
|
-
import { getOrgInfo } from
|
|
5
|
-
import { orgShortNameAtom } from
|
|
1
|
+
import { atom } from "jotai";
|
|
2
|
+
import { ColorMapping } from "src/application/models/colorsConfig";
|
|
3
|
+
import { FrontendConfig } from "src/application/models/frontendConfig";
|
|
4
|
+
import { getOrgInfo } from "src/application/models/supportedOrgs";
|
|
5
|
+
import { orgShortNameAtom } from "src/atoms/org/org";
|
|
6
6
|
|
|
7
|
-
const internalGraphQLColorsConfigAtom = atom<ColorMapping | undefined>(
|
|
8
|
-
|
|
7
|
+
const internalGraphQLColorsConfigAtom = atom<ColorMapping | undefined>(
|
|
8
|
+
undefined
|
|
9
|
+
);
|
|
10
|
+
const internalGraphQLFrontendConfigAtom = atom<FrontendConfig | undefined>(
|
|
11
|
+
undefined
|
|
12
|
+
);
|
|
9
13
|
|
|
10
14
|
export const colorsConfigAtom = atom(
|
|
11
15
|
async (get) => {
|
|
12
16
|
const colors = get(internalGraphQLColorsConfigAtom);
|
|
13
|
-
const
|
|
17
|
+
const orgShortName = get(orgShortNameAtom);
|
|
18
|
+
if (!orgShortName) {
|
|
19
|
+
return colors;
|
|
20
|
+
}
|
|
21
|
+
const orgInfo = await getOrgInfo(orgShortName);
|
|
14
22
|
const orgUIConfigColors = orgInfo.orgColors();
|
|
15
|
-
|
|
23
|
+
|
|
24
|
+
// Only merge if orgUIConfigColors is a proper ColorMapping, not an empty object
|
|
25
|
+
if (
|
|
26
|
+
colors &&
|
|
27
|
+
orgUIConfigColors &&
|
|
28
|
+
Object.keys(orgUIConfigColors).length > 0
|
|
29
|
+
) {
|
|
30
|
+
return { ...orgUIConfigColors, ...colors } as ColorMapping;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
return colors;
|
|
16
34
|
},
|
|
17
35
|
(_, set, value: ColorMapping | undefined) => {
|
|
18
36
|
set(internalGraphQLColorsConfigAtom, value);
|
|
19
|
-
}
|
|
37
|
+
}
|
|
20
38
|
);
|
|
21
39
|
|
|
22
40
|
export const frontendConfigAtom = atom(
|
|
23
41
|
(get) => get(internalGraphQLFrontendConfigAtom),
|
|
24
42
|
(_, set, value: FrontendConfig | undefined) => {
|
|
25
43
|
set(internalGraphQLFrontendConfigAtom, value);
|
|
26
|
-
}
|
|
44
|
+
}
|
|
27
45
|
);
|
|
@@ -3,11 +3,125 @@ import { ColorNames } from "src/contexts/types";
|
|
|
3
3
|
import { orgUIConfigAtom } from "src/atoms/org/orgUIConfig";
|
|
4
4
|
import { colorsConfigAtom } from "src/atoms/org/graphqlConfig";
|
|
5
5
|
|
|
6
|
+
const tailwindStyles = `@tailwind base;
|
|
7
|
+
@tailwind components;
|
|
8
|
+
@tailwind utilities;
|
|
9
|
+
|
|
10
|
+
@layer utilities {
|
|
11
|
+
/* Provides a utility class to disable scroll bars */
|
|
12
|
+
/* Chrome, Safari and Opera */
|
|
13
|
+
.spiffy-tw-no-scrollbar::-webkit-scrollbar {
|
|
14
|
+
display: none;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
.spiffy-tw-no-scrollbar {
|
|
18
|
+
-ms-overflow-style: none; /* IE and Edge */
|
|
19
|
+
scrollbar-width: none; /* Firefox */
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
.spiffy-tw-typography-ul,
|
|
23
|
+
.spiffy-tw-typography-ol {
|
|
24
|
+
list-style: inherit;
|
|
25
|
+
margin: 0;
|
|
26
|
+
padding-left: 24px;
|
|
27
|
+
line-height: 4px;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
/*
|
|
32
|
+
* TODO: this needs to be re-scoped to target the application root instead
|
|
33
|
+
* of the individual components.
|
|
34
|
+
*/
|
|
35
|
+
#spiffy-ai-container,
|
|
36
|
+
#spiffy-ai-chat-preview,
|
|
37
|
+
#spiffy-ai-chat-preview-contents,
|
|
38
|
+
#spiffy-ai-floating-button {
|
|
39
|
+
font-family: 'Inter Variable', sans-serif;
|
|
40
|
+
h1,
|
|
41
|
+
h2,
|
|
42
|
+
h3,
|
|
43
|
+
h4,
|
|
44
|
+
h5,
|
|
45
|
+
h6 {
|
|
46
|
+
font-family: Poppins, sans-serif;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
/* inter-latin-wght-normal */
|
|
51
|
+
@font-face {
|
|
52
|
+
font-family: 'Inter Variable';
|
|
53
|
+
font-style: normal;
|
|
54
|
+
font-display: swap;
|
|
55
|
+
font-weight: 100 900;
|
|
56
|
+
src: url(https://cdn.jsdelivr.net/fontsource/fonts/inter:vf@latest/latin-wght-normal.woff2)
|
|
57
|
+
format('woff2-variations');
|
|
58
|
+
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304,
|
|
59
|
+
U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
/* inter-latin-wght-italic */
|
|
63
|
+
@font-face {
|
|
64
|
+
font-family: 'Inter Variable';
|
|
65
|
+
font-style: italic;
|
|
66
|
+
font-display: swap;
|
|
67
|
+
font-weight: 100 900;
|
|
68
|
+
src: url(https://cdn.jsdelivr.net/fontsource/fonts/inter:vf@latest/latin-wght-italic.woff2)
|
|
69
|
+
format('woff2-variations');
|
|
70
|
+
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304,
|
|
71
|
+
U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
/* poppins-latin-400-normal */
|
|
75
|
+
@font-face {
|
|
76
|
+
font-family: 'Poppins';
|
|
77
|
+
font-style: normal;
|
|
78
|
+
font-display: swap;
|
|
79
|
+
font-weight: 400;
|
|
80
|
+
src: url(https://cdn.jsdelivr.net/fontsource/fonts/poppins@latest/latin-400-normal.woff2)
|
|
81
|
+
format('woff2'),
|
|
82
|
+
url(https://cdn.jsdelivr.net/fontsource/fonts/poppins@latest/latin-400-normal.woff)
|
|
83
|
+
format('woff');
|
|
84
|
+
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304,
|
|
85
|
+
U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF,
|
|
86
|
+
U+FFFD;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
/* poppins-latin-500-normal */
|
|
90
|
+
@font-face {
|
|
91
|
+
font-family: 'Poppins';
|
|
92
|
+
font-style: normal;
|
|
93
|
+
font-display: swap;
|
|
94
|
+
font-weight: 500;
|
|
95
|
+
src: url(https://cdn.jsdelivr.net/fontsource/fonts/poppins@latest/latin-500-normal.woff2)
|
|
96
|
+
format('woff2'),
|
|
97
|
+
url(https://cdn.jsdelivr.net/fontsource/fonts/poppins@latest/latin-500-normal.woff)
|
|
98
|
+
format('woff');
|
|
99
|
+
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304,
|
|
100
|
+
U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF,
|
|
101
|
+
U+FFFD;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
/* poppins-latin-600-normal */
|
|
105
|
+
@font-face {
|
|
106
|
+
font-family: 'Poppins';
|
|
107
|
+
font-style: normal;
|
|
108
|
+
font-display: swap;
|
|
109
|
+
font-weight: 600;
|
|
110
|
+
src: url(https://cdn.jsdelivr.net/fontsource/fonts/poppins@latest/latin-600-normal.woff2)
|
|
111
|
+
format('woff2'),
|
|
112
|
+
url(https://cdn.jsdelivr.net/fontsource/fonts/poppins@latest/latin-600-normal.woff)
|
|
113
|
+
format('woff');
|
|
114
|
+
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304,
|
|
115
|
+
U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF,
|
|
116
|
+
U+FFFD;
|
|
117
|
+
}`;
|
|
118
|
+
|
|
6
119
|
export const orgMerchantCssAtom = atom(async (get) => {
|
|
7
120
|
const orgUIConfig = get(orgUIConfigAtom);
|
|
8
121
|
const colors = await get(colorsConfigAtom);
|
|
9
122
|
const merchantThemeCss = colors
|
|
10
123
|
? `
|
|
124
|
+
${tailwindStyles}
|
|
11
125
|
|
|
12
126
|
* {
|
|
13
127
|
--spiffy-colors-text-primary: ${colors[ColorNames.TextPrimary]};
|