@admin-layout/tailwind-design-pro 12.0.16-alpha.6 → 12.0.16-alpha.62
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/README.md +30 -0
- package/lib/cdm-locales/en/menu.json +2 -1
- package/lib/cdm-locales/es/menu.json +2 -1
- package/lib/cdm-locales/index.d.ts +2 -0
- package/lib/cdm-locales/index.d.ts.map +1 -0
- package/lib/cdm-locales/index.ts +1 -0
- package/lib/components/LanguageMenu/LanguageMenu.js.map +1 -1
- package/lib/components/Layout/BasicLayout/index.d.ts +2 -1
- package/lib/components/Layout/BasicLayout/index.d.ts.map +1 -1
- package/lib/components/Layout/BasicLayout/index.js +120 -43
- package/lib/components/Layout/BasicLayout/index.js.map +1 -1
- package/lib/components/Layout/BasicLayout/utils.d.ts +2 -0
- package/lib/components/Layout/BasicLayout/utils.d.ts.map +1 -1
- package/lib/components/Layout/BasicLayout/utils.js +16 -13
- package/lib/components/Layout/BasicLayout/utils.js.map +1 -1
- package/lib/components/Layout/GlobalFooter/Account.d.ts +4 -0
- package/lib/components/Layout/GlobalFooter/Account.d.ts.map +1 -0
- package/lib/components/Layout/GlobalFooter/Account.js +147 -0
- package/lib/components/Layout/GlobalFooter/Account.js.map +1 -0
- package/lib/components/Layout/GlobalFooter/BottomMenuDropdown.d.ts.map +1 -1
- package/lib/components/Layout/GlobalFooter/BottomMenuDropdown.js +7 -12
- package/lib/components/Layout/GlobalFooter/BottomMenuDropdown.js.map +1 -1
- package/lib/components/Layout/GlobalHeader/Header.d.ts.map +1 -1
- package/lib/components/Layout/GlobalHeader/Header.js +32 -9
- package/lib/components/Layout/GlobalHeader/Header.js.map +1 -1
- package/lib/components/Layout/GlobalHeader/MainHeader.d.ts +0 -2
- package/lib/components/Layout/GlobalHeader/MainHeader.d.ts.map +1 -1
- package/lib/components/Layout/GlobalHeader/MainHeader.js +32 -84
- package/lib/components/Layout/GlobalHeader/MainHeader.js.map +1 -1
- package/lib/components/Layout/GlobalHeader/OrganizationDropdown.js +1 -1
- package/lib/components/Layout/GlobalHeader/OrganizationDropdown.js.map +1 -1
- package/lib/components/Layout/GlobalHeader/RightContent.d.ts +1 -0
- package/lib/components/Layout/GlobalHeader/RightContent.d.ts.map +1 -1
- package/lib/components/Layout/GlobalHeader/RightContent.js +73 -6
- package/lib/components/Layout/GlobalHeader/RightContent.js.map +1 -1
- package/lib/components/Layout/GlobalHeader/RightMenu.d.ts.map +1 -1
- package/lib/components/Layout/GlobalHeader/RightMenu.js +2 -4
- package/lib/components/Layout/GlobalHeader/RightMenu.js.map +1 -1
- package/lib/components/Layout/GlobalHeader/SearchBar.js.map +1 -1
- package/lib/components/Layout/GlobalHeader/index.d.ts +0 -1
- package/lib/components/Layout/GlobalHeader/index.d.ts.map +1 -1
- package/lib/components/Layout/ProTailwindLayout.d.ts +2 -2
- package/lib/components/Layout/ProTailwindLayout.d.ts.map +1 -1
- package/lib/components/Layout/ProTailwindLayout.js +69 -7
- package/lib/components/Layout/ProTailwindLayout.js.map +1 -1
- package/lib/components/Layout/Sidebar/Divider.js.map +1 -1
- package/lib/components/Layout/Sidebar/DynamicIcon.js.map +1 -1
- package/lib/components/Layout/Sidebar/MainSidebar.d.ts +5 -0
- package/lib/components/Layout/Sidebar/MainSidebar.d.ts.map +1 -0
- package/lib/components/Layout/Sidebar/{Sidebar.js → MainSidebar.js} +37 -9
- package/lib/components/Layout/Sidebar/MainSidebar.js.map +1 -0
- package/lib/components/Layout/Sidebar/MainSidebarMenu.d.ts +4 -0
- package/lib/components/Layout/Sidebar/MainSidebarMenu.d.ts.map +1 -0
- package/lib/components/Layout/Sidebar/MainSidebarMenu.js +294 -0
- package/lib/components/Layout/Sidebar/MainSidebarMenu.js.map +1 -0
- package/lib/components/Layout/Sidebar/PerplexSidebar.d.ts +5 -0
- package/lib/components/Layout/Sidebar/PerplexSidebar.d.ts.map +1 -0
- package/lib/components/Layout/Sidebar/PerplexSidebar.js +192 -0
- package/lib/components/Layout/Sidebar/PerplexSidebar.js.map +1 -0
- package/lib/components/Layout/Sidebar/PerplexSidebarMenu.d.ts +4 -0
- package/lib/components/Layout/Sidebar/PerplexSidebarMenu.d.ts.map +1 -0
- package/lib/components/Layout/Sidebar/PerplexSidebarMenu.js +330 -0
- package/lib/components/Layout/Sidebar/PerplexSidebarMenu.js.map +1 -0
- package/lib/components/Layout/TailwindLayout.d.ts.map +1 -1
- package/lib/components/Layout/TailwindLayout.js +78 -15
- package/lib/components/Layout/TailwindLayout.js.map +1 -1
- package/lib/components/Layout/getPageTitle.js.map +1 -1
- package/lib/components/Layout/slot-fill/AdditionalSettings.js.map +1 -1
- package/lib/components/Layout/slot-fill/Footer.js.map +1 -1
- package/lib/components/Layout/slot-fill/HeaderSearchBar.js.map +1 -1
- package/lib/components/Layout/slot-fill/HeaderSearchButton.js.map +1 -1
- package/lib/components/Layout/slot-fill/Logo.d.ts +4 -0
- package/lib/components/Layout/slot-fill/Logo.d.ts.map +1 -0
- package/lib/components/Layout/slot-fill/Logo.js +7 -0
- package/lib/components/Layout/slot-fill/Logo.js.map +1 -0
- package/lib/components/Layout/slot-fill/RightContent.js.map +1 -1
- package/lib/components/Layout/util.js +1 -1
- package/lib/components/Layout/util.js.map +1 -1
- package/lib/components/SettingDrawer/CheckBoxTheme.d.ts.map +1 -1
- package/lib/components/SettingDrawer/CheckBoxTheme.js +13 -3
- package/lib/components/SettingDrawer/CheckBoxTheme.js.map +1 -1
- package/lib/components/SettingDrawer/InvitationSettings.d.ts.map +1 -1
- package/lib/components/SettingDrawer/InvitationSettings.js +10 -6
- package/lib/components/SettingDrawer/InvitationSettings.js.map +1 -1
- package/lib/components/SettingDrawer/LayoutChange.d.ts.map +1 -1
- package/lib/components/SettingDrawer/LayoutChange.js +23 -16
- package/lib/components/SettingDrawer/LayoutChange.js.map +1 -1
- package/lib/components/SettingDrawer/MenuVisibilitySettings.d.ts +20 -0
- package/lib/components/SettingDrawer/MenuVisibilitySettings.d.ts.map +1 -0
- package/lib/components/SettingDrawer/MenuVisibilitySettings.js +120 -0
- package/lib/components/SettingDrawer/MenuVisibilitySettings.js.map +1 -0
- package/lib/components/SettingDrawer/NavigationsModes.d.ts +1 -1
- package/lib/components/SettingDrawer/NavigationsModes.d.ts.map +1 -1
- package/lib/components/SettingDrawer/NavigationsModes.js +103 -15
- package/lib/components/SettingDrawer/NavigationsModes.js.map +1 -1
- package/lib/components/SettingDrawer/RegionalSettings.d.ts.map +1 -1
- package/lib/components/SettingDrawer/RegionalSettings.js +54 -177
- package/lib/components/SettingDrawer/RegionalSettings.js.map +1 -1
- package/lib/components/SettingDrawer/SettingDrawer.d.ts.map +1 -1
- package/lib/components/SettingDrawer/SettingDrawer.js +423 -62
- package/lib/components/SettingDrawer/SettingDrawer.js.map +1 -1
- package/lib/components/SettingDrawer/Switch/index.js.map +1 -1
- package/lib/components/SettingDrawer/ThemeColor.d.ts.map +1 -1
- package/lib/components/SettingDrawer/ThemeColor.js +15 -3
- package/lib/components/SettingDrawer/ThemeColor.js.map +1 -1
- package/lib/components/SettingDrawer/types.d.ts +12 -0
- package/lib/components/SettingDrawer/types.d.ts.map +1 -1
- package/lib/components/UpdateSettingsResource/UpdateSettingsResource.server.d.ts +8 -5
- package/lib/components/UpdateSettingsResource/UpdateSettingsResource.server.d.ts.map +1 -1
- package/lib/components/UpdateSettingsResource/UpdateSettingsResource.server.js +239 -4
- package/lib/components/UpdateSettingsResource/UpdateSettingsResource.server.js.map +1 -1
- package/lib/components/index.d.ts +0 -1
- package/lib/components/index.d.ts.map +1 -1
- package/lib/components/index.js +1 -1
- package/lib/components/typings.d.ts +14 -6
- package/lib/components/typings.d.ts.map +1 -1
- package/lib/compute.d.ts.map +1 -1
- package/lib/compute.js +10 -2
- package/lib/compute.js.map +1 -1
- package/lib/config/analytics-config.js +9 -0
- package/lib/config/analytics-config.js.map +1 -0
- package/lib/config/constants.js.map +1 -1
- package/lib/config/env-config.d.ts +3 -0
- package/lib/config/env-config.d.ts.map +1 -1
- package/lib/config/env-config.js +10 -0
- package/lib/config/env-config.js.map +1 -1
- package/lib/helpers/DynamicIcon.js.map +1 -1
- package/lib/hooks/index.d.ts +0 -3
- package/lib/hooks/index.d.ts.map +1 -1
- package/lib/hooks/useMediaQuery.js.map +1 -1
- package/lib/hooks/useScrollThreshold.js.map +1 -1
- package/lib/hooks/useTailwindTheme.js.map +1 -1
- package/lib/icons.d.ts +2 -0
- package/lib/icons.d.ts.map +1 -1
- package/lib/icons.js +4 -2
- package/lib/icons.js.map +1 -1
- package/lib/index.d.ts +1 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +1 -1
- package/lib/index.js.map +1 -1
- package/lib/machines/selectors.d.ts +118 -0
- package/lib/machines/selectors.d.ts.map +1 -0
- package/lib/machines/settingsMachine.d.ts +25 -2
- package/lib/machines/settingsMachine.d.ts.map +1 -1
- package/lib/machines/settingsMachine.js +217 -161
- package/lib/machines/settingsMachine.js.map +1 -1
- package/lib/machines/settingsMachine.test.d.ts +2 -0
- package/lib/machines/settingsMachine.test.d.ts.map +1 -0
- package/lib/machines/types.d.ts +106 -9
- package/lib/machines/types.d.ts.map +1 -1
- package/lib/machines/types.js.map +1 -1
- package/lib/module.js.map +1 -1
- package/lib/redux/searchReducer.js.map +1 -1
- package/lib/routes.json +9 -1
- package/lib/tailwindConfig.js.map +1 -1
- package/lib/utils/__tests__/configOverrides.test.d.ts +2 -0
- package/lib/utils/__tests__/configOverrides.test.d.ts.map +1 -0
- package/lib/utils/configOverrides.d.ts +213 -0
- package/lib/utils/configOverrides.d.ts.map +1 -0
- package/lib/utils/configOverrides.js +91 -0
- package/lib/utils/configOverrides.js.map +1 -0
- package/lib/utils/isBrowser/index.js.map +1 -1
- package/lib/utils/settingsUtils.d.ts +20 -0
- package/lib/utils/settingsUtils.d.ts.map +1 -0
- package/lib/utils/settingsUtils.js +74 -0
- package/lib/utils/settingsUtils.js.map +1 -0
- package/lib/utils/utils/index.js.map +1 -1
- package/package.json +6 -16
- package/lib/components/Layout/GlobalHeader/Logo.d.ts +0 -4
- package/lib/components/Layout/GlobalHeader/Logo.d.ts.map +0 -1
- package/lib/components/Layout/GlobalHeader/Logo.js +0 -141
- package/lib/components/Layout/GlobalHeader/Logo.js.map +0 -1
- package/lib/components/Layout/Sidebar/Sidebar.d.ts +0 -5
- package/lib/components/Layout/Sidebar/Sidebar.d.ts.map +0 -1
- package/lib/components/Layout/Sidebar/Sidebar.js.map +0 -1
- package/lib/components/Layout/Sidebar/SidebarMenu.d.ts +0 -4
- package/lib/components/Layout/Sidebar/SidebarMenu.d.ts.map +0 -1
- package/lib/components/Layout/Sidebar/SidebarMenu.js +0 -176
- package/lib/components/Layout/Sidebar/SidebarMenu.js.map +0 -1
- package/lib/components/UI/CardList.d.ts +0 -61
- package/lib/components/UI/CardList.d.ts.map +0 -1
- package/lib/components/UI/CardList.js +0 -43
- package/lib/components/UI/CardList.js.map +0 -1
- package/lib/components/UI/CategoriesTypeList.d.ts +0 -29
- package/lib/components/UI/CategoriesTypeList.d.ts.map +0 -1
- package/lib/components/UI/CategoriesTypeList.js +0 -139
- package/lib/components/UI/CategoriesTypeList.js.map +0 -1
- package/lib/components/UI/LazyLoadingGoogleMarker.d.ts +0 -83
- package/lib/components/UI/LazyLoadingGoogleMarker.d.ts.map +0 -1
- package/lib/components/UI/LazyLoadingGoogleMarker.js +0 -107
- package/lib/components/UI/LazyLoadingGoogleMarker.js.map +0 -1
- package/lib/components/UI/Pagination.d.ts +0 -6
- package/lib/components/UI/Pagination.d.ts.map +0 -1
- package/lib/components/UI/Pagination.js +0 -56
- package/lib/components/UI/Pagination.js.map +0 -1
- package/lib/components/UI/ParamSearchResultContainer.d.ts +0 -99
- package/lib/components/UI/ParamSearchResultContainer.d.ts.map +0 -1
- package/lib/components/UI/ParamSearchResultContainer.js +0 -120
- package/lib/components/UI/ParamSearchResultContainer.js.map +0 -1
- package/lib/components/UI/PropertyCard.d.ts +0 -24
- package/lib/components/UI/PropertyCard.d.ts.map +0 -1
- package/lib/components/UI/PropertyCard.js +0 -420
- package/lib/components/UI/PropertyCard.js.map +0 -1
- package/lib/components/UI/PropertyCardOnMap.d.ts +0 -10
- package/lib/components/UI/PropertyCardOnMap.d.ts.map +0 -1
- package/lib/components/UI/PropertyCardOnMap.js +0 -108
- package/lib/components/UI/PropertyCardOnMap.js.map +0 -1
- package/lib/components/UI/VehicleCard/PricePopover.d.ts +0 -8
- package/lib/components/UI/VehicleCard/PricePopover.d.ts.map +0 -1
- package/lib/components/UI/VehicleCard/PricePopover.js +0 -98
- package/lib/components/UI/VehicleCard/PricePopover.js.map +0 -1
- package/lib/components/UI/VehicleCard/VehicleBadge.d.ts +0 -7
- package/lib/components/UI/VehicleCard/VehicleBadge.d.ts.map +0 -1
- package/lib/components/UI/VehicleCard/VehicleFeature.d.ts +0 -9
- package/lib/components/UI/VehicleCard/VehicleFeature.d.ts.map +0 -1
- package/lib/components/UI/VehicleCard/VehicleFeature.js +0 -22
- package/lib/components/UI/VehicleCard/VehicleFeature.js.map +0 -1
- package/lib/components/UI/VehicleCard/types.d.ts +0 -59
- package/lib/components/UI/VehicleCard/types.d.ts.map +0 -1
- package/lib/components/UI/VehicleCard.d.ts +0 -15
- package/lib/components/UI/VehicleCard.d.ts.map +0 -1
- package/lib/components/UI/VehicleCard.js +0 -166
- package/lib/components/UI/VehicleCard.js.map +0 -1
- package/lib/components/UI/VehicleCardList.d.ts +0 -14
- package/lib/components/UI/VehicleCardList.d.ts.map +0 -1
- package/lib/components/UI/VehicleCardList.js +0 -38
- package/lib/components/UI/VehicleCardList.js.map +0 -1
- package/lib/components/UI/VehicleParamSearchResultContainer.d.ts +0 -90
- package/lib/components/UI/VehicleParamSearchResultContainer.d.ts.map +0 -1
- package/lib/components/UI/icons/LocationIcon.d.ts +0 -7
- package/lib/components/UI/icons/LocationIcon.d.ts.map +0 -1
- package/lib/components/UI/icons/LocationIcon.js +0 -18
- package/lib/components/UI/icons/LocationIcon.js.map +0 -1
- package/lib/components/UI/icons/index.d.ts +0 -2
- package/lib/components/UI/icons/index.d.ts.map +0 -1
- package/lib/components/UI/index.d.ts +0 -10
- package/lib/components/UI/index.d.ts.map +0 -1
- package/lib/components/typings.js +0 -6
- package/lib/components/typings.js.map +0 -1
- package/lib/hooks/use-get-current-lat-long.d.ts +0 -18
- package/lib/hooks/use-get-current-lat-long.d.ts.map +0 -1
- package/lib/hooks/use-get-current-lat-long.js +0 -29
- package/lib/hooks/use-get-current-lat-long.js.map +0 -1
- package/lib/hooks/useWindowSize.d.ts +0 -6
- package/lib/hooks/useWindowSize.d.ts.map +0 -1
- package/lib/hooks/useWindowSize.js +0 -20
- package/lib/hooks/useWindowSize.js.map +0 -1
- package/lib/middlewares/airbnbDatasourcesMiddleware.d.ts +0 -6
- package/lib/middlewares/airbnbDatasourcesMiddleware.d.ts.map +0 -1
- package/lib/middlewares/bookingCarRentalMiddleware.d.ts +0 -6
- package/lib/middlewares/bookingCarRentalMiddleware.d.ts.map +0 -1
- package/lib/middlewares/bookingDatasourcesMiddleware.d.ts +0 -7
- package/lib/middlewares/bookingDatasourcesMiddleware.d.ts.map +0 -1
- package/lib/middlewares/datasourcesMiddleware.d.ts +0 -6
- package/lib/middlewares/datasourcesMiddleware.d.ts.map +0 -1
- package/lib/middlewares/pricelineDatasourcesMiddleware.d.ts +0 -7
- package/lib/middlewares/pricelineDatasourcesMiddleware.d.ts.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/machines/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,QAAQ,CAAC;AAChH,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,QAAQ,GAAG,OAAO,CAAC;AAC5D,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/machines/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sources":["../../src/machines/types.ts"],"sourcesContent":[null],"names":[],"mappings":"IAKY;AAAZ,CAAA,UAAY,iBAAiB,EAAA;AACzB,EAAA,iBAAA,CAAA,WAAA,CAAA,GAAA,WAAA;AACA,EAAA,iBAAA,CAAA,WAAA,CAAA,GAAA,WAAA;AACJ,CAAC,EAHW,iBAAiB,KAAjB,iBAAiB,
|
|
1
|
+
{"version":3,"file":"types.js","sources":["../../src/machines/types.ts"],"sourcesContent":[null],"names":[],"mappings":"IAKY;AAAZ,CAAA,UAAY,iBAAiB,EAAA;AACzB,EAAA,iBAAA,CAAA,WAAA,CAAA,GAAA,WAAA;AACA,EAAA,iBAAA,CAAA,WAAA,CAAA,GAAA,WAAA;AACJ,CAAC,EAHW,iBAAiB,KAAjB,iBAAiB,GAAA,EAAA,CAAA,CAAA"}
|
package/lib/module.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module.js","sources":["../src/module.tsx"],"sourcesContent":[null],"names":[],"mappings":"oOAWA;AACA;AACA;AACA,eAAe,IAAI,OAAO,CAAC;AACvB,EAAA,oBAAA,EAAoB;;;;;AAKnB,GAAA;AACD,EAAA,WAAA,EAAW,
|
|
1
|
+
{"version":3,"file":"module.js","sources":["../src/module.tsx"],"sourcesContent":[null],"names":[],"mappings":"oOAWA;AACA;AACA;AACA,eAAe,IAAI,OAAO,CAAC;AACvB,EAAA,oBAAA,EAAoB;;;;;AAKnB,GAAA;AACD,EAAA,WAAA,EAAW,cAAE;AACb,EAAA,iBAAA,EAAiB;gBACb,EAAA,CAAA,cAAe;AAClB,GAAA;AACD,EAAA,OAAA,EAAO;qBACH;AACA,IAAA,QAAA,EAAA,eAAU;AACV,IAAA,MAAA,EAAA;AACH,GAAA;cACD,EAAY,CAAA,wDAAG;AAClB,CAAA,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"searchReducer.js","sources":["../../src/redux/searchReducer.ts"],"sourcesContent":[null],"names":[],"mappings":"AAAA;
|
|
1
|
+
{"version":3,"file":"searchReducer.js","sources":["../../src/redux/searchReducer.ts"],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACO,MAAM,cAAc,GAAG;AAC1B,EAAA,gBAAA,EAAgB,yBAAE;AAClB,EAAA,iBAAA,EAAiB,0BAAE;AACnB,EAAA,gBAAA,EAAgB,yBAAE;AAClB,EAAA,YAAA,EAAY,qBAAE;AACd,EAAA,QAAA,EAAQ,iBAAE;AACV,EAAA,kBAAA,EAAkB,2BAAE;AACpB,EAAA,WAAA,EAAW,oBAAE;AACb,EAAA,eAAA,EAAe;;AAMnB;MACa,cAAc,GAAG,KAAC,KAAiB;MAExC,EAAI,cAAE,CAAA,gBAAe;AACrB,EAAA,OAAA,EAAO;AACA,CAAA;MAEF,eAAe,GAAG,OAAC,KAA2B;MAEnD,EAAI,cAAE,CAAA,iBAAe;AACrB,EAAA,OAAA,EAAO;AACA,CAAA;MAEF,cAAc,GAAG,KAAC,KAAiB;MAExC,EAAI,cAAE,CAAA,gBAAe;AACrB,EAAA,OAAA,EAAO;AACA,CAAA;AAER,MAAM,WAAW,GAAG,OACtB;MACG,EAAI,cAAE,CAAA;AACC,CAAA;AAyBf;AACA,MAAM,YAAY,GAAgB;AAC9B,EAAA,WAAA,EAAW,EAAE;AACb,EAAA,aAAA,EAAa,EAAE;AACf,EAAA,WAAA,EAAW,KAAE;AACb,EAAA,WAAA,EAAW;CACd;AAED;SACgB,aAAa,CAAC,KAAK,GAAG,YAAY,EAAE,MAAoB,EAAA;AACpE,EAAA,QAAA,MAAQ,CAAA,IAAO;SACX,cAAK,CAAA,gBAAe;aAChB;AACI,QAAA,GAAA,KAAA;mBACA,EAAA,MAAW,CAAA,OAAQ;AACnB,QAAA,WAAA,EAAA,MAAW,QAAQ,CAAC,SAAQ;;SAEpC,cAAK,CAAA,iBAAe;aAChB;AACI,QAAA,GAAA,KAAA;qBACA,EAAA,MAAa,CAAA,OAAQ;AACrB,QAAA,WAAA,EAAA,KAAA;AACA,QAAA,WAAA,EAAA;;SAER,cAAK,CAAA,gBAAe;aAChB;AACI,QAAA,GAAA,KAAA;mBACA,EAAA,MAAW,CAAA,OAAQ;AACnB,QAAA,WAAA,EAAA;;SAER,cAAK,CAAA,YAAe;aAChB;AACI,QAAA,GAAA;;AAER,IAAA;AACI,MAAA,OAAA,KAAA;;AAEZ"}
|
package/lib/routes.json
CHANGED
|
@@ -36,7 +36,15 @@
|
|
|
36
36
|
"path": "/resources/settings",
|
|
37
37
|
"componentPath": "@admin-layout/tailwind-design-pro/lib/components/UpdateSettingsResource/UpdateSettingsResource.js",
|
|
38
38
|
"hasLoader": true,
|
|
39
|
-
"hasAction": true
|
|
39
|
+
"hasAction": true,
|
|
40
|
+
"loaderReturnInfo": {
|
|
41
|
+
"returnType": "json",
|
|
42
|
+
"hasOptions": true,
|
|
43
|
+
"keys": [
|
|
44
|
+
"settings",
|
|
45
|
+
"settings"
|
|
46
|
+
]
|
|
47
|
+
}
|
|
40
48
|
}
|
|
41
49
|
}
|
|
42
50
|
]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tailwindConfig.js","sources":["../src/tailwindConfig.ts"],"sourcesContent":[null],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tailwindConfig.js","sources":["../src/tailwindConfig.ts"],"sourcesContent":[null],"names":[],"mappings":"AAAO,MAAM,WAAW,GAAG;AACvB,EAAA,MAAA,EAAM;AACF,IAAA,MAAA,EAAA,oBAAQ;AACR,IAAA,KAAA,EAAA,mBAAO;AACP,IAAA,IAAA,EAAA,kBAAM;AACN,IAAA,UAAA,EAAA,wBAAY;AACZ,IAAA,UAAA,EAAA,wBAAY;AACZ,IAAA,OAAA,EAAA;AACI,MAAA,OAAA,EAAA,qBAAS;AACT,MAAA,UAAA,EAAA;AACH,KAAA;AACD,IAAA,SAAA,EAAA;AACI,MAAA,OAAA,EAAA,uBAAS;AACT,MAAA,UAAA,EAAA;AACH,KAAA;AACD,IAAA,WAAA,EAAA;AACI,MAAA,OAAA,EAAA,yBAAS;AACT,MAAA,UAAA,EAAA;AACH,KAAA;AACD,IAAA,KAAA,EAAA;AACI,MAAA,OAAA,EAAA,mBAAS;AACT,MAAA,UAAA,EAAA;AACH,KAAA;AACD,IAAA,MAAA,EAAA;AACI,MAAA,OAAA,EAAA,oBAAS;AACT,MAAA,UAAA,EAAA;AACH,KAAA;AACD,IAAA,OAAA,EAAA;AACI,MAAA,OAAA,EAAA,qBAAS;AACT,MAAA,UAAA,EAAA;AACH,KAAA;AACD,IAAA,IAAA,EAAA;AACI,MAAA,OAAA,EAAA,kBAAS;AACT,MAAA,UAAA,EAAA;AACH,KAAA;AACD,IAAA,OAAA,EAAA;AACI,MAAA,OAAA,EAAA,gCAAS;AACT,MAAA,UAAA,EAAA,gCAAY;AACZ,MAAA,OAAA,EAAA,6BAAS;AACT,MAAA,oBAAA,EAAA,wCAAsB;AACtB,MAAA,MAAA,EAAA,4BAAQ;AACR,MAAA,mBAAA,EAAA,uCAAqB;AACrB,MAAA,MAAA,EAAA,4BAAQ;AACR,MAAA,IAAA,EAAA;AACH,KAAA;;AAED,IAAA,KAAA,EAAA;AACI,MAAA,OAAA,EAAA,2BAAS;AACT,MAAA,SAAA,EAAA,6BAAW;AACX,MAAA,MAAA,EAAA;AACH,KAAA;;AAED,IAAA,OAAA,EAAA,qBAAS;AACT,IAAA,OAAA,EAAA,qBAAS;AACT,IAAA,KAAA,EAAA,mBAAO;AACP,IAAA,IAAA,EAAA;AACH,GAAA;AACD,EAAA,eAAA,EAAe;AACX,IAAA,kBAAA,EAAA,yBAAoB;AACpB,IAAA,oBAAA,EAAA,2BAAsB;AACtB,IAAA,gBAAA,EAAA;AACH,GAAA;AACD,EAAA,SAAA,EAAS;AACL,IAAA,EAAA,EAAA,kBAAI;AACJ,IAAA,EAAA,EAAA,kBAAI;AACJ,IAAA,EAAA,EAAA,kBAAI;AACJ,IAAA,EAAA,EAAA;AACH,GAAA;AACD,EAAA,kBAAA,EAAkB;AACd,IAAA,MAAA,EAAA,0BAAQ;AACR,IAAA,SAAA,EAAA,6BAAW;AACX,IAAA,GAAA,EAAA;AACH,GAAA;AACD,EAAA,YAAA,EAAY;AACR,IAAA,EAAA,EAAA,eAAI;AACJ,IAAA,EAAA,EAAA,2BAAI;AACJ,IAAA,EAAA,EAAA;AACH,GAAA;AACD,EAAA,SAAA,EAAS;AACL,IAAA,gBAAA,EAAA;AACI,MAAA,IAAA,EAAA;AACI,QAAA,MAAA,EAAA;AACH,OAAA;AACD,MAAA,EAAA,EAAA;AACI,QAAA,MAAA,EAAA;AACH;AACJ,KAAA;AACD,IAAA,cAAA,EAAA;AACI,MAAA,IAAA,EAAA;AACI,QAAA,MAAA,EAAA;AACH,OAAA;AACD,MAAA,EAAA,EAAA;AACI,QAAA,MAAA,EAAA;AACH;AACJ;AACJ,GAAA;AACD,EAAA,SAAA,EAAS;AACL,IAAA,gBAAA,EAAA,8BAAkB;AAClB,IAAA,cAAA,EAAA;AACH;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"configOverrides.test.d.ts","sourceRoot":"","sources":["../../../src/utils/__tests__/configOverrides.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,213 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Configuration Override System
|
|
3
|
+
*
|
|
4
|
+
* This module implements a VS Code-style configuration override pattern.
|
|
5
|
+
* Instead of deeply nested route and device-specific settings, we use a nested
|
|
6
|
+
* structure with context keys for overrides.
|
|
7
|
+
*
|
|
8
|
+
* ## Pattern
|
|
9
|
+
*
|
|
10
|
+
* Base configuration:
|
|
11
|
+
* ```
|
|
12
|
+
* uilayout.regions.header.showLogo = true
|
|
13
|
+
* ```
|
|
14
|
+
*
|
|
15
|
+
* Override for specific route and device:
|
|
16
|
+
* ```
|
|
17
|
+
* [route=/dashboard][device=mobile]: {
|
|
18
|
+
* uilayout: {
|
|
19
|
+
* regions: {
|
|
20
|
+
* header: {
|
|
21
|
+
* showLogo: false
|
|
22
|
+
* }
|
|
23
|
+
* }
|
|
24
|
+
* }
|
|
25
|
+
* }
|
|
26
|
+
* ```
|
|
27
|
+
*
|
|
28
|
+
* ## Benefits
|
|
29
|
+
*
|
|
30
|
+
* 1. **Flat Schema**: Configuration schema is defined once, not duplicated per route/device
|
|
31
|
+
* 2. **Clear Inheritance**: Easy to see what's overridden and what uses defaults
|
|
32
|
+
* 3. **Flexibility**: Can add new context dimensions (e.g., [user=admin], [theme=dark])
|
|
33
|
+
* 4. **Database Friendly**: Nested structure is natural for MongoDB
|
|
34
|
+
* 5. **Type Safe**: TypeScript can enforce config keys
|
|
35
|
+
*
|
|
36
|
+
* ## Usage in MongoDB
|
|
37
|
+
*
|
|
38
|
+
* ```json
|
|
39
|
+
* {
|
|
40
|
+
* "uiSettings": {
|
|
41
|
+
* "uilayout": {
|
|
42
|
+
* "regions": {
|
|
43
|
+
* "header": {
|
|
44
|
+
* "showLogo": true
|
|
45
|
+
* }
|
|
46
|
+
* }
|
|
47
|
+
* },
|
|
48
|
+
* "[route=/dashboard][device=mobile]": {
|
|
49
|
+
* "uilayout": {
|
|
50
|
+
* "regions": {
|
|
51
|
+
* "header": {
|
|
52
|
+
* "showLogo": false
|
|
53
|
+
* }
|
|
54
|
+
* }
|
|
55
|
+
* }
|
|
56
|
+
* }
|
|
57
|
+
* }
|
|
58
|
+
* }
|
|
59
|
+
* ```
|
|
60
|
+
*/
|
|
61
|
+
export interface OverrideContext {
|
|
62
|
+
route?: string;
|
|
63
|
+
device?: 'desktop' | 'mobile';
|
|
64
|
+
theme?: string;
|
|
65
|
+
user?: string;
|
|
66
|
+
[key: string]: string | undefined;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Parse multiple bracket pattern into array of identifiers
|
|
70
|
+
* Supports both single bracket [/route.mobile] and multiple bracket [/route][mobile] patterns
|
|
71
|
+
*
|
|
72
|
+
* @example
|
|
73
|
+
* parseMultipleBracketIdentifiers("[/dashboard][mobile]")
|
|
74
|
+
* // Returns: ['/dashboard', 'mobile']
|
|
75
|
+
*
|
|
76
|
+
* parseMultipleBracketIdentifiers("[mobile]")
|
|
77
|
+
* // Returns: ['mobile']
|
|
78
|
+
*
|
|
79
|
+
* parseMultipleBracketIdentifiers("[/dashboard.mobile]") // Backward compatibility
|
|
80
|
+
* // Returns: ['/dashboard', 'mobile']
|
|
81
|
+
*/
|
|
82
|
+
export declare function parseMultipleBracketIdentifiers(overrideKey: string): string[];
|
|
83
|
+
/**
|
|
84
|
+
* Build multiple bracket pattern from identifiers array
|
|
85
|
+
*
|
|
86
|
+
* @example
|
|
87
|
+
* buildMultipleBracketKey(['/dashboard', 'mobile'])
|
|
88
|
+
* // Returns: "[/dashboard][mobile]"
|
|
89
|
+
*
|
|
90
|
+
* buildMultipleBracketKey(['mobile'])
|
|
91
|
+
* // Returns: "[mobile]"
|
|
92
|
+
*/
|
|
93
|
+
export declare function buildMultipleBracketKey(identifiers: string[]): string;
|
|
94
|
+
/**
|
|
95
|
+
* Build multiple bracket pattern from context object
|
|
96
|
+
* Uses the new multiple bracket format: [/route][device]
|
|
97
|
+
*
|
|
98
|
+
* @example
|
|
99
|
+
* buildMultipleBracketKeyFromContext({ route: '/dashboard', device: 'mobile' })
|
|
100
|
+
* // Returns: "[/dashboard][mobile]"
|
|
101
|
+
*
|
|
102
|
+
* buildMultipleBracketKeyFromContext({ device: 'mobile' })
|
|
103
|
+
* // Returns: "[mobile]"
|
|
104
|
+
*/
|
|
105
|
+
export declare function buildMultipleBracketKeyFromContext(context: OverrideContext): string;
|
|
106
|
+
/**
|
|
107
|
+
* Convert multiple bracket pattern to context object
|
|
108
|
+
*
|
|
109
|
+
* @example
|
|
110
|
+
* multipleBracketToContext("[/dashboard][mobile]")
|
|
111
|
+
* // Returns: { route: '/dashboard', device: 'mobile' }
|
|
112
|
+
*/
|
|
113
|
+
export declare function multipleBracketToContext(overrideKey: string): OverrideContext;
|
|
114
|
+
/**
|
|
115
|
+
* Convert a dot-notation path to a nested object
|
|
116
|
+
* @example
|
|
117
|
+
* setNestedValue({}, 'uilayout.regions.header.showLogo', false)
|
|
118
|
+
* // Returns: { uilayout: { regions: { header: { showLogo: false } } } }
|
|
119
|
+
*/
|
|
120
|
+
export declare function setNestedValue(obj: any, path: string, value: any): any;
|
|
121
|
+
/**
|
|
122
|
+
* Get a value from a nested object using dot notation
|
|
123
|
+
* @example
|
|
124
|
+
* getNestedValue({ uilayout: { regions: { header: { showLogo: false } } } }, 'uilayout.regions.header.showLogo')
|
|
125
|
+
* // Returns: false
|
|
126
|
+
*/
|
|
127
|
+
export declare function getNestedValue(obj: any, path: string, defaultValue?: any): any;
|
|
128
|
+
/**
|
|
129
|
+
* Deep merge two objects
|
|
130
|
+
*/
|
|
131
|
+
export declare function deepMerge(target: any, source: any): any;
|
|
132
|
+
/**
|
|
133
|
+
* Build an override context key from context
|
|
134
|
+
*
|
|
135
|
+
* Format: [route][device] or [route] or [device]
|
|
136
|
+
*
|
|
137
|
+
* @example
|
|
138
|
+
* buildOverrideKey({ route: '/dashboard', device: 'mobile' })
|
|
139
|
+
* // Returns: "[/dashboard][mobile]"
|
|
140
|
+
*
|
|
141
|
+
* buildOverrideKey({ route: '/dashboard' })
|
|
142
|
+
* // Returns: "[/dashboard]"
|
|
143
|
+
*
|
|
144
|
+
* buildOverrideKey({ device: 'mobile' })
|
|
145
|
+
* // Returns: "[mobile]"
|
|
146
|
+
*/
|
|
147
|
+
export declare function buildOverrideKey(context: OverrideContext): string;
|
|
148
|
+
/**
|
|
149
|
+
* Parse an override key into its components
|
|
150
|
+
* Supports both new multiple bracket format and legacy dot notation
|
|
151
|
+
*
|
|
152
|
+
* @example
|
|
153
|
+
* parseOverrideKey("[/dashboard][mobile]") // New format
|
|
154
|
+
* // Returns: { route: '/dashboard', device: 'mobile' }
|
|
155
|
+
*
|
|
156
|
+
* parseOverrideKey("[/dashboard.mobile]") // Legacy format
|
|
157
|
+
* // Returns: { route: '/dashboard', device: 'mobile' }
|
|
158
|
+
*
|
|
159
|
+
* parseOverrideKey("[/dashboard]")
|
|
160
|
+
* // Returns: { route: '/dashboard' }
|
|
161
|
+
*
|
|
162
|
+
* parseOverrideKey("[mobile]")
|
|
163
|
+
* // Returns: { device: 'mobile' }
|
|
164
|
+
*
|
|
165
|
+
* parseOverrideKey("[.mobile]") // Legacy device-only format
|
|
166
|
+
* // Returns: { device: 'mobile' }
|
|
167
|
+
*/
|
|
168
|
+
export declare function parseOverrideKey(overrideKey: string): OverrideContext;
|
|
169
|
+
/**
|
|
170
|
+
* Get a configuration value with override support
|
|
171
|
+
*
|
|
172
|
+
* Priority:
|
|
173
|
+
* 1. Most specific override (all context matches)
|
|
174
|
+
* 2. Partial overrides (some context matches)
|
|
175
|
+
* 3. Base configuration value
|
|
176
|
+
* 4. Default value
|
|
177
|
+
*
|
|
178
|
+
* Works with nested storage where overrides are stored as:
|
|
179
|
+
* { "[route=/dashboard][device=mobile]": { uilayout: { regions: { header: { showLogo: false } } } } }
|
|
180
|
+
*/
|
|
181
|
+
export declare function getConfigValue<T = any>(settings: any, configKey: string, context: OverrideContext, defaultValue?: T): T;
|
|
182
|
+
/**
|
|
183
|
+
* Set a configuration value as an override
|
|
184
|
+
*
|
|
185
|
+
* Returns the context key and nested value structure.
|
|
186
|
+
* The service layer will merge this into the settings object.
|
|
187
|
+
*
|
|
188
|
+
* @example
|
|
189
|
+
* const result = setConfigOverride('regions.header.showLogo', false, { route: '/dashboard', device: 'mobile' });
|
|
190
|
+
* // Returns: {
|
|
191
|
+
* // contextKey: '[device=mobile][route=/dashboard]',
|
|
192
|
+
* // path: 'uilayout.regions.header.showLogo',
|
|
193
|
+
* // value: false,
|
|
194
|
+
* // nestedValue: { uilayout: { regions: { header: { showLogo: false } } } }
|
|
195
|
+
* // }
|
|
196
|
+
*/
|
|
197
|
+
export declare function setConfigOverride(configKey: string, value: any, context: OverrideContext): {
|
|
198
|
+
contextKey: string;
|
|
199
|
+
path: string;
|
|
200
|
+
value: any;
|
|
201
|
+
nestedValue: any;
|
|
202
|
+
};
|
|
203
|
+
/**
|
|
204
|
+
* Get all overrides for a specific context
|
|
205
|
+
* Works with nested storage format
|
|
206
|
+
*/
|
|
207
|
+
export declare function getContextOverrides(settings: any, context: OverrideContext): Record<string, any>;
|
|
208
|
+
/**
|
|
209
|
+
* Remove all overrides for a specific context
|
|
210
|
+
* Returns the context key to remove from settings
|
|
211
|
+
*/
|
|
212
|
+
export declare function clearContextOverrides(settings: any, context: OverrideContext): string | null;
|
|
213
|
+
//# sourceMappingURL=configOverrides.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"configOverrides.d.ts","sourceRoot":"","sources":["../../src/utils/configOverrides.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2DG;AAEH,MAAM,WAAW,eAAe;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;CACrC;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,+BAA+B,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,CA2C7E;AAED;;;;;;;;;GASG;AACH,wBAAgB,uBAAuB,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,MAAM,CAMrE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,kCAAkC,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,CAqBnF;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,WAAW,EAAE,MAAM,GAAG,eAAe,CAoB7E;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,GAAG,CAiBtE;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,GAAG,GAAG,GAAG,CAY9E;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,GAAG,GAAG,CAkBvD;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,CAyBjE;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,eAAe,CAiDrE;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,cAAc,CAAC,CAAC,GAAG,GAAG,EAClC,QAAQ,EAAE,GAAG,EACb,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,eAAe,EACxB,YAAY,CAAC,EAAE,CAAC,GACjB,CAAC,CAoEH;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,iBAAiB,CAC7B,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,GAAG,EACV,OAAO,EAAE,eAAe,GACzB;IACC,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,GAAG,CAAC;IACX,WAAW,EAAE,GAAG,CAAC;CACpB,CAWA;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,GAAG,EAAE,OAAO,EAAE,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAShG;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,GAAG,EAAE,OAAO,EAAE,eAAe,GAAG,MAAM,GAAG,IAAI,CAQ5F"}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Configuration Override System
|
|
3
|
+
*
|
|
4
|
+
* This module implements a VS Code-style configuration override pattern.
|
|
5
|
+
* Instead of deeply nested route and device-specific settings, we use a nested
|
|
6
|
+
* structure with context keys for overrides.
|
|
7
|
+
*
|
|
8
|
+
* ## Pattern
|
|
9
|
+
*
|
|
10
|
+
* Base configuration:
|
|
11
|
+
* ```
|
|
12
|
+
* uilayout.regions.header.showLogo = true
|
|
13
|
+
* ```
|
|
14
|
+
*
|
|
15
|
+
* Override for specific route and device:
|
|
16
|
+
* ```
|
|
17
|
+
* [route=/dashboard][device=mobile]: {
|
|
18
|
+
* uilayout: {
|
|
19
|
+
* regions: {
|
|
20
|
+
* header: {
|
|
21
|
+
* showLogo: false
|
|
22
|
+
* }
|
|
23
|
+
* }
|
|
24
|
+
* }
|
|
25
|
+
* }
|
|
26
|
+
* ```
|
|
27
|
+
*
|
|
28
|
+
* ## Benefits
|
|
29
|
+
*
|
|
30
|
+
* 1. **Flat Schema**: Configuration schema is defined once, not duplicated per route/device
|
|
31
|
+
* 2. **Clear Inheritance**: Easy to see what's overridden and what uses defaults
|
|
32
|
+
* 3. **Flexibility**: Can add new context dimensions (e.g., [user=admin], [theme=dark])
|
|
33
|
+
* 4. **Database Friendly**: Nested structure is natural for MongoDB
|
|
34
|
+
* 5. **Type Safe**: TypeScript can enforce config keys
|
|
35
|
+
*
|
|
36
|
+
* ## Usage in MongoDB
|
|
37
|
+
*
|
|
38
|
+
* ```json
|
|
39
|
+
* {
|
|
40
|
+
* "uiSettings": {
|
|
41
|
+
* "uilayout": {
|
|
42
|
+
* "regions": {
|
|
43
|
+
* "header": {
|
|
44
|
+
* "showLogo": true
|
|
45
|
+
* }
|
|
46
|
+
* }
|
|
47
|
+
* },
|
|
48
|
+
* "[route=/dashboard][device=mobile]": {
|
|
49
|
+
* "uilayout": {
|
|
50
|
+
* "regions": {
|
|
51
|
+
* "header": {
|
|
52
|
+
* "showLogo": false
|
|
53
|
+
* }
|
|
54
|
+
* }
|
|
55
|
+
* }
|
|
56
|
+
* }
|
|
57
|
+
* }
|
|
58
|
+
* }
|
|
59
|
+
* ```
|
|
60
|
+
*/
|
|
61
|
+
/**
|
|
62
|
+
* Parse multiple bracket pattern into array of identifiers
|
|
63
|
+
* Supports both single bracket [/route.mobile] and multiple bracket [/route][mobile] patterns
|
|
64
|
+
*
|
|
65
|
+
* @example
|
|
66
|
+
* parseMultipleBracketIdentifiers("[/dashboard][mobile]")
|
|
67
|
+
* // Returns: ['/dashboard', 'mobile']
|
|
68
|
+
*
|
|
69
|
+
* parseMultipleBracketIdentifiers("[mobile]")
|
|
70
|
+
* // Returns: ['mobile']
|
|
71
|
+
*
|
|
72
|
+
* parseMultipleBracketIdentifiers("[/dashboard.mobile]") // Backward compatibility
|
|
73
|
+
* // Returns: ['/dashboard', 'mobile']
|
|
74
|
+
*/
|
|
75
|
+
/**
|
|
76
|
+
* Get a value from a nested object using dot notation
|
|
77
|
+
* @example
|
|
78
|
+
* getNestedValue({ uilayout: { regions: { header: { showLogo: false } } } }, 'uilayout.regions.header.showLogo')
|
|
79
|
+
* // Returns: false
|
|
80
|
+
*/
|
|
81
|
+
function getNestedValue(obj, path, defaultValue) {
|
|
82
|
+
const keys = path.split('.');
|
|
83
|
+
let current = obj;
|
|
84
|
+
for (const key of keys) {
|
|
85
|
+
if (current === null || current === undefined || typeof current !== 'object') {
|
|
86
|
+
return defaultValue;
|
|
87
|
+
}
|
|
88
|
+
current = current[key];
|
|
89
|
+
}
|
|
90
|
+
return current !== undefined ? current : defaultValue;
|
|
91
|
+
}export{getNestedValue};//# sourceMappingURL=configOverrides.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"configOverrides.js","sources":["../../src/utils/configOverrides.ts"],"sourcesContent":[null],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2DG;AAUH;;;;;;;;;;;;;AAaG;;AA6JA;AACH;;;AAII;AACI,SAAI,cAAgB,CAAA,GAAI,EAAA,IAAO,EAAA,YAAc,EAAA;AACzC,EAAA,MAAA,IAAA,GAAA,IAAO;aACV,GAAA,GAAA;AACD,EAAA,KAAA,MAAA,GAAO,IAAG,IAAA,EAAQ;IACtB,IAAC,OAAA,KAAA,IAAA,IAAA,OAAA,KAAA,SAAA,IAAA,OAAA,OAAA,KAAA,QAAA,EAAA;MAED,OAAO,YAAY;AACvB,IAAC;AAED,IAAA,OAAA,GAAA,OAAA,CAAA,GAAA,CAAA;;AAEG,EAAA,OAAA,OAAA,KAAA,SAAA,GAAA,OAAA,GAAA,YAAA;AACH"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/utils/isBrowser/index.ts"],"sourcesContent":[null],"names":[],"mappings":"AAAA,MAAM,MAAM,GAAG,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,CAAC,QAAQ,IAAI,IAAI,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,IAAI,IAAI;
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/utils/isBrowser/index.ts"],"sourcesContent":[null],"names":[],"mappings":"AAAA,MAAM,MAAM,GAAG,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,CAAC,QAAQ,IAAI,IAAI,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,IAAI,IAAI;AAE1G,MAAM,SAAS,GAAG,MAAK;MACnB,OAAI,CAAA,GAAQ,CAAA,aAAY,MAAK,EAAM;AAC/B,IAAA,OAAA,IAAO;;AAEX,EAAA,OAAA,OAAO,MAAO,KAAM,WAAK,WAAe,MAAO,CAAA,QAAO,KAAQ,WAAK,IAAW,CAAA;AAClF"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Get a setting value based on applyToAllRoutes flag and current route/device context
|
|
3
|
+
* @param machineSettings - The settings object from XState machine
|
|
4
|
+
* @param settingName - The setting key to retrieve (e.g., 'fixedHeader', 'organization.members.invitations')
|
|
5
|
+
* @param applyToAllRoutes - Whether to use global or route-specific overrides
|
|
6
|
+
* @param currentRoute - Current route path or route pattern
|
|
7
|
+
* @param deviceType - Current device type ('desktop' or 'mobile')
|
|
8
|
+
* @param defaultValue - Default value if setting not found
|
|
9
|
+
* @returns The setting value from the appropriate scope
|
|
10
|
+
*/
|
|
11
|
+
export declare const getSettingValue: (machineSettings: any, settingName: string, applyToAllRoutes: boolean, currentRoute: string, deviceType: "desktop" | "mobile", defaultValue?: any) => any;
|
|
12
|
+
/**
|
|
13
|
+
* Calculate the default value for applyToAllRoutes based on what overrides exist
|
|
14
|
+
* @param settings - The full settings object with ConfigurationModel
|
|
15
|
+
* @param currentRoute - Current route path or route pattern
|
|
16
|
+
* @param deviceType - Current device type ('desktop' or 'mobile')
|
|
17
|
+
* @returns The default value for applyToAllRoutes
|
|
18
|
+
*/
|
|
19
|
+
export declare const getDefaultApplyToAllRoutes: (settings: any, currentRoute: string, deviceType: "desktop" | "mobile") => boolean;
|
|
20
|
+
//# sourceMappingURL=settingsUtils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"settingsUtils.d.ts","sourceRoot":"","sources":["../../src/utils/settingsUtils.ts"],"names":[],"mappings":"AAEA;;;;;;;;;GASG;AACH,eAAO,MAAM,eAAe,GACxB,iBAAiB,GAAG,EACpB,aAAa,MAAM,EACnB,kBAAkB,OAAO,EACzB,cAAc,MAAM,EACpB,YAAY,SAAS,GAAG,QAAQ,EAChC,eAAe,GAAG,QAwCrB,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,0BAA0B,GACnC,UAAU,GAAG,EACb,cAAc,MAAM,EACpB,YAAY,SAAS,GAAG,QAAQ,KACjC,OA2BF,CAAC"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import {getNestedValue}from'./configOverrides.js';/**
|
|
2
|
+
* Get a setting value based on applyToAllRoutes flag and current route/device context
|
|
3
|
+
* @param machineSettings - The settings object from XState machine
|
|
4
|
+
* @param settingName - The setting key to retrieve (e.g., 'fixedHeader', 'organization.members.invitations')
|
|
5
|
+
* @param applyToAllRoutes - Whether to use global or route-specific overrides
|
|
6
|
+
* @param currentRoute - Current route path or route pattern
|
|
7
|
+
* @param deviceType - Current device type ('desktop' or 'mobile')
|
|
8
|
+
* @param defaultValue - Default value if setting not found
|
|
9
|
+
* @returns The setting value from the appropriate scope
|
|
10
|
+
*/
|
|
11
|
+
const getSettingValue = (machineSettings, settingName, applyToAllRoutes, currentRoute, deviceType, defaultValue) => {
|
|
12
|
+
if (!machineSettings) {
|
|
13
|
+
return defaultValue;
|
|
14
|
+
}
|
|
15
|
+
// Try to get from changedSettings first (most recent updates)
|
|
16
|
+
const changedSettings = machineSettings?.changedSettings || {};
|
|
17
|
+
const configModel = machineSettings?.configModel;
|
|
18
|
+
if (applyToAllRoutes) {
|
|
19
|
+
// Global mode: look for [device].settingName in changedSettings
|
|
20
|
+
const globalKey = `[${deviceType}].${settingName}`;
|
|
21
|
+
if (changedSettings[globalKey] !== undefined) {
|
|
22
|
+
return changedSettings[globalKey];
|
|
23
|
+
}
|
|
24
|
+
// Apply device-only override to get global settings
|
|
25
|
+
if (configModel) {
|
|
26
|
+
const deviceKey = `[${deviceType}]`;
|
|
27
|
+
const globalOverride = configModel.override(deviceKey);
|
|
28
|
+
const value = getNestedValue(globalOverride?.contents || configModel.contents, settingName);
|
|
29
|
+
if (value !== undefined) {
|
|
30
|
+
console.log(` → Returning from configModel override:`, value);
|
|
31
|
+
return value;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
return defaultValue;
|
|
35
|
+
} else {
|
|
36
|
+
// Route-specific mode: look for [route][device].settingName in changedSettings
|
|
37
|
+
const routeKey = `[${currentRoute}][${deviceType}].${settingName}`;
|
|
38
|
+
if (changedSettings[routeKey] !== undefined) {
|
|
39
|
+
return changedSettings[routeKey];
|
|
40
|
+
}
|
|
41
|
+
// Fall back to context value (which has route-specific overrides already applied)
|
|
42
|
+
const value = getNestedValue(machineSettings, settingName);
|
|
43
|
+
return value !== undefined ? value : defaultValue;
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
/**
|
|
47
|
+
* Calculate the default value for applyToAllRoutes based on what overrides exist
|
|
48
|
+
* @param settings - The full settings object with ConfigurationModel
|
|
49
|
+
* @param currentRoute - Current route path or route pattern
|
|
50
|
+
* @param deviceType - Current device type ('desktop' or 'mobile')
|
|
51
|
+
* @returns The default value for applyToAllRoutes
|
|
52
|
+
*/
|
|
53
|
+
const getDefaultApplyToAllRoutes = (settings, currentRoute, deviceType) => {
|
|
54
|
+
const configModel = settings?.configModel;
|
|
55
|
+
if (!configModel) {
|
|
56
|
+
return false; // Default to route-specific if no configModel
|
|
57
|
+
}
|
|
58
|
+
const routeDeviceKey = `[${currentRoute}][${deviceType}]`;
|
|
59
|
+
const deviceKey = `[${deviceType}]`;
|
|
60
|
+
// Check if route-specific override exists by looking at the overrides array
|
|
61
|
+
const hasRouteOverride = configModel.overrides?.some(override => override.identifiers?.includes(routeDeviceKey));
|
|
62
|
+
// Check if global override exists by looking at the overrides array
|
|
63
|
+
const hasGlobalOverride = configModel.overrides?.some(override => override.identifiers?.includes(deviceKey));
|
|
64
|
+
// If route has its own override, use route-specific (applyToAllRoutes = false)
|
|
65
|
+
if (hasRouteOverride) {
|
|
66
|
+
return false;
|
|
67
|
+
}
|
|
68
|
+
// If no route override but global override exists, use global (applyToAllRoutes = true)
|
|
69
|
+
if (hasGlobalOverride) {
|
|
70
|
+
return true;
|
|
71
|
+
}
|
|
72
|
+
// No route or global override, default to route-specific (applyToAllRoutes = false)
|
|
73
|
+
return false;
|
|
74
|
+
};export{getDefaultApplyToAllRoutes,getSettingValue};//# sourceMappingURL=settingsUtils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"settingsUtils.js","sources":["../../src/utils/settingsUtils.ts"],"sourcesContent":[null],"names":[],"mappings":"kDAEA;;;;;;;;;AASG;AACI,MAAM,eAAe,GAAG,CAC3B,eAAoB,EACpB,WAAmB,EACnB,gBAAyB,EACzB,YAAoB,EACpB,UAAgC,EAChC,YAAkB,KAClB;MACA,CAAA,eAAK,EAAe;AAChB,IAAA,OAAA;;;AAIJ,EAAA,MAAA,kBAAqB,eAAG,EAAe,eAAE,IAAe,EAAI;AAC5D,EAAA,MAAA,WAAM,GAAW,eAAG,EAAe;MAEnC,gBAAI,EAAgB;;AAEhB,IAAA,MAAA,aAAe,CAAA,EAAG,eAAc,WAAK,CAAA,CAAA;AAErC,IAAA,IAAA,yBAAoB,CAAA,KAAU,SAAK,EAAA;AAC/B,MAAA,OAAA,eAAO,CAAA,SAAgB,CAAA;;;QAI3B,WAAI,EAAA;AACA,MAAA,MAAA,SAAM,GAAA,CAAA,CAAA,EAAS,UAAO,CAAA,CAAA,CAAA;YACtB,cAAM,GAAA,WAAiB,CAAA,kBAAqB,CAAA;AAC5C,MAAA,MAAA,KAAA,GAAM,cAAQ,CAAA,wBAA+B,IAAA,WAAY,CAAA,QAAY,EAAA,WAAU,CAAA;AAC/E,MAAA,IAAA,KAAA,KAAI,SAAU,EAAA;AACV,QAAA,OAAA,CAAA,GAAA,CAAA,CAAA,iDAAsD;AACtD,QAAA,OAAA,KAAA;;;AAGR,IAAA,OAAA;SACH;;UACG,QAAA,GAAA,CAAA,CAAA,EAAA,YAAA,CAAA,EAAA,EAAA,UAAA,CAAA,EAAA,EAAA,WAAA,CAAA,CAAA;QACA,wBAAqB,CAAA,KAAA,SAAiB,EAAA;AACtC,MAAA,sBAAoB,CAAA,QAAS,CAAA;AACzB,IAAA;;UAGJ,KAAA,GAAA,cAAA,CAAA,eAAA,EAAA,WAAA,CAAA;WACA,KAAM,cAAQ,GAAA,oBAA8B;;;AAGpD;AAEA;;;;;;AAMG,MAAA,0BAAA,GAAA,CAAA,QAAA,EAAA,YAAA,EAAA,UAAA,KAAA;AACH,EAAA,MAAO,WAAM,GAAA,QAAA,EAAA,WACT;AAIA,EAAA,IAAA,CAAA,WAAM,EAAA;IACN,OAAK,KAAA,CAAA;;QAEJ,cAAA,GAAA,CAAA,CAAA,EAAA,YAAA,CAAA,EAAA,EAAA,UAAA,CAAA,CAAA,CAAA;AAED,EAAA,MAAA,gBAAoB;AACpB;QAEA,gBAAA,GAAA,WAAA,CAAA,SAAA,EAAA,IAAA,CAAA,QAAA,IAAA,QAAA,CAAA,WAA4E,EAAA,QAAA,CAAA,cAAA,CAAA,CAAA;;QAG5E,iBAAA,GAAA,WAAA,CAAA,SAAA,EAAA,IAAA,CAAA,QAAA,IAAA,QAAoE,CAAA,WAAA,EAAA,QAAA,CAAA,SAAA,CAAA,CAAA;;MAGpE,gBAAA,EAAA;IACA,OAAI,KAAA;AACA,EAAA;;MAGJ,iBAAA,EAAA;IACA,OAAI,IAAA;AACA,EAAA;;SAGJ,KAAA;AACA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/utils/utils/index.ts"],"sourcesContent":[null],"names":[],"mappings":"0FAmFC,SAAA,EAAA,CAAA,GAAA,MAAA,EAAA;AAED,EAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/utils/utils/index.ts"],"sourcesContent":[null],"names":[],"mappings":"0FAmFC,SAAA,EAAA,CAAA,GAAA,MAAA,EAAA;AAED,EAAA,OAAM,OAAU,CAAA,IAAG,CAAG,MAAoB,CAAA,CAAA;AACtC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@admin-layout/tailwind-design-pro",
|
|
3
|
-
"version": "12.0.16-alpha.
|
|
3
|
+
"version": "12.0.16-alpha.62",
|
|
4
4
|
"description": "Sample core for higher packages to depend on",
|
|
5
5
|
"license": "ISC",
|
|
6
6
|
"author": "CDMBase LLC",
|
|
@@ -21,25 +21,15 @@
|
|
|
21
21
|
"watch": "yarn build:lib:watch"
|
|
22
22
|
},
|
|
23
23
|
"dependencies": {
|
|
24
|
-
"@admin-layout/assets": "
|
|
25
|
-
"@admin-layout/client": "12.0.16-alpha.
|
|
26
|
-
"@admin-layout/tailwind-ui": "12.0.16-alpha.
|
|
27
|
-
"@cdmbase/react-splide": "^0.7.12",
|
|
28
|
-
"@react-google-maps/api": "^2.20.7",
|
|
29
|
-
"@types/react-copy-to-clipboard": "^4.3.0",
|
|
30
|
-
"@vis.gl/react-google-maps": "^1.5.4",
|
|
31
|
-
"base-64": "^0.1.0",
|
|
32
|
-
"identicon.js": "^2.3.1",
|
|
33
|
-
"react-copy-to-clipboard": "^5.0.2",
|
|
24
|
+
"@admin-layout/assets": "12.0.16-alpha.36",
|
|
25
|
+
"@admin-layout/client": "12.0.16-alpha.62",
|
|
26
|
+
"@admin-layout/tailwind-ui": "12.0.16-alpha.62",
|
|
34
27
|
"react-favicon": "^0.0.23",
|
|
35
|
-
"react-fontawesome": "^1.6.1",
|
|
36
|
-
"react-infinite-scroll-component": "^6.1.0",
|
|
37
28
|
"react-intl": "^6.1.1",
|
|
38
|
-
"react-rating": "^2.0.5",
|
|
39
29
|
"react-responsive": "^10.0.0"
|
|
40
30
|
},
|
|
41
31
|
"devDependencies": {
|
|
42
|
-
"@adminide-stack/extension-api": "^12.0.4-alpha.
|
|
32
|
+
"@adminide-stack/extension-api": "^12.0.4-alpha.316",
|
|
43
33
|
"@tailwindcss/aspect-ratio": "^0.4.2",
|
|
44
34
|
"@tailwindcss/forms": "^0.5.4",
|
|
45
35
|
"@tailwindcss/typography": "^0.5.9",
|
|
@@ -63,5 +53,5 @@
|
|
|
63
53
|
"typescript": {
|
|
64
54
|
"definition": "lib/index.d.ts"
|
|
65
55
|
},
|
|
66
|
-
"gitHead": "
|
|
56
|
+
"gitHead": "0f34e34fa56ef415cd32998b67df42ab784af9a1"
|
|
67
57
|
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Logo.d.ts","sourceRoot":"","sources":["../../../../src/components/Layout/GlobalHeader/Logo.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAEnD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AA4B3C,eAAO,MAAM,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,UAAU,CAsJrC,CAAC"}
|