@itwin/map-layers 6.0.0-dev.0 → 6.0.0-dev.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/lib/cjs/ui/widget/AttachLayerPopupButton.d.ts.map +1 -1
  2. package/lib/cjs/ui/widget/AttachLayerPopupButton.js +19 -33
  3. package/lib/cjs/ui/widget/AttachLayerPopupButton.js.map +1 -1
  4. package/lib/cjs/ui/widget/CustomParamsSettings.d.ts +5 -1
  5. package/lib/cjs/ui/widget/CustomParamsSettings.d.ts.map +1 -1
  6. package/lib/cjs/ui/widget/CustomParamsSettings.js +30 -8
  7. package/lib/cjs/ui/widget/CustomParamsSettings.js.map +1 -1
  8. package/lib/cjs/ui/widget/MapLayerDroppable.d.ts.map +1 -1
  9. package/lib/cjs/ui/widget/MapLayerDroppable.js +2 -2
  10. package/lib/cjs/ui/widget/MapLayerDroppable.js.map +1 -1
  11. package/lib/cjs/ui/widget/MapLayerSettingsPopupButton.d.ts.map +1 -1
  12. package/lib/cjs/ui/widget/MapLayerSettingsPopupButton.js +5 -25
  13. package/lib/cjs/ui/widget/MapLayerSettingsPopupButton.js.map +1 -1
  14. package/lib/cjs/ui/widget/MapManagerSettings.d.ts +5 -1
  15. package/lib/cjs/ui/widget/MapManagerSettings.d.ts.map +1 -1
  16. package/lib/cjs/ui/widget/MapManagerSettings.js +2 -2
  17. package/lib/cjs/ui/widget/MapManagerSettings.js.map +1 -1
  18. package/lib/cjs/ui/widget/MapUrlDialog.d.ts +0 -1
  19. package/lib/cjs/ui/widget/MapUrlDialog.d.ts.map +1 -1
  20. package/lib/cjs/ui/widget/MapUrlDialog.js.map +1 -1
  21. package/lib/cjs/ui/widget/SubLayersPopupButton.d.ts.map +1 -1
  22. package/lib/cjs/ui/widget/SubLayersPopupButton.js +1 -13
  23. package/lib/cjs/ui/widget/SubLayersPopupButton.js.map +1 -1
  24. package/lib/cjs/ui/widget/TransparencyPopupButton.d.ts.map +1 -1
  25. package/lib/cjs/ui/widget/TransparencyPopupButton.js +4 -10
  26. package/lib/cjs/ui/widget/TransparencyPopupButton.js.map +1 -1
  27. package/lib/esm/ui/widget/AttachLayerPopupButton.d.ts.map +1 -1
  28. package/lib/esm/ui/widget/AttachLayerPopupButton.js +20 -34
  29. package/lib/esm/ui/widget/AttachLayerPopupButton.js.map +1 -1
  30. package/lib/esm/ui/widget/CustomParamsSettings.d.ts +5 -1
  31. package/lib/esm/ui/widget/CustomParamsSettings.d.ts.map +1 -1
  32. package/lib/esm/ui/widget/CustomParamsSettings.js +30 -8
  33. package/lib/esm/ui/widget/CustomParamsSettings.js.map +1 -1
  34. package/lib/esm/ui/widget/MapLayerDroppable.d.ts.map +1 -1
  35. package/lib/esm/ui/widget/MapLayerDroppable.js +2 -2
  36. package/lib/esm/ui/widget/MapLayerDroppable.js.map +1 -1
  37. package/lib/esm/ui/widget/MapLayerSettingsPopupButton.d.ts.map +1 -1
  38. package/lib/esm/ui/widget/MapLayerSettingsPopupButton.js +7 -27
  39. package/lib/esm/ui/widget/MapLayerSettingsPopupButton.js.map +1 -1
  40. package/lib/esm/ui/widget/MapManagerSettings.d.ts +5 -1
  41. package/lib/esm/ui/widget/MapManagerSettings.d.ts.map +1 -1
  42. package/lib/esm/ui/widget/MapManagerSettings.js +2 -2
  43. package/lib/esm/ui/widget/MapManagerSettings.js.map +1 -1
  44. package/lib/esm/ui/widget/MapUrlDialog.d.ts +0 -1
  45. package/lib/esm/ui/widget/MapUrlDialog.d.ts.map +1 -1
  46. package/lib/esm/ui/widget/MapUrlDialog.js.map +1 -1
  47. package/lib/esm/ui/widget/SubLayersPopupButton.d.ts.map +1 -1
  48. package/lib/esm/ui/widget/SubLayersPopupButton.js +3 -15
  49. package/lib/esm/ui/widget/SubLayersPopupButton.js.map +1 -1
  50. package/lib/esm/ui/widget/TransparencyPopupButton.d.ts.map +1 -1
  51. package/lib/esm/ui/widget/TransparencyPopupButton.js +6 -12
  52. package/lib/esm/ui/widget/TransparencyPopupButton.js.map +1 -1
  53. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"TransparencyPopupButton.d.ts","sourceRoot":"","sources":["../../../../src/ui/widget/TransparencyPopupButton.tsx"],"names":[],"mappings":"AAKA,OAAO,gCAAgC,CAAC;AAOxC,aAAa;AACb,MAAM,WAAW,4BAA4B;IAC3C,6BAA6B;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,mEAAmE;IACnE,oBAAoB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,uBAAuB;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,aAAa;AACb,wBAAgB,uBAAuB,CAAC,EAAE,YAAY,EAAE,oBAAoB,EAAE,aAAa,EAAE,QAAQ,EAAE,EAAE,4BAA4B,2CA2DpI"}
1
+ {"version":3,"file":"TransparencyPopupButton.d.ts","sourceRoot":"","sources":["../../../../src/ui/widget/TransparencyPopupButton.tsx"],"names":[],"mappings":"AAKA,OAAO,gCAAgC,CAAC;AAKxC,aAAa;AACb,MAAM,WAAW,4BAA4B;IAC3C,6BAA6B;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,mEAAmE;IACnE,oBAAoB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,uBAAuB;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,aAAa;AACb,wBAAgB,uBAAuB,CAAC,EAAE,YAAY,EAAE,oBAAoB,EAAE,aAAa,EAAE,QAAQ,EAAE,EAAE,4BAA4B,2CA4DpI"}
@@ -1,27 +1,21 @@
1
- import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  /*---------------------------------------------------------------------------------------------
3
3
  * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
4
  * See LICENSE.md in the project root for license terms and full copyright notice.
5
5
  *--------------------------------------------------------------------------------------------*/
6
6
  import "./TransparencyPopupButton.scss";
7
7
  import * as React from "react";
8
- import { RelativePosition } from "@itwin/appui-abstract";
9
8
  import { IModelApp } from "@itwin/core-frontend";
10
- import { Popup } from "@itwin/core-react";
11
- import { Button, Slider } from "@itwin/itwinui-react";
9
+ import { Button, Popover, Slider } from "@itwin/itwinui-react";
12
10
  /** @alpha */
13
11
  export function TransparencyPopupButton({ transparency, onTransparencyChange, buttonToolTip, disabled }) {
14
12
  const [isSettingsOpen, setIsSettingsOpen] = React.useState(false);
15
13
  const [defaultTransparencyLabel] = React.useState(IModelApp.localization.getLocalizedString("mapLayers:TransparencyPopup.SetTransparency"));
16
14
  const toolTipLabel = React.useMemo(() => (buttonToolTip ? buttonToolTip : defaultTransparencyLabel), [buttonToolTip, defaultTransparencyLabel]);
17
15
  const buttonRef = React.useRef(null);
18
- const togglePopupDisplay = React.useCallback((event) => {
19
- event.preventDefault();
20
- setIsSettingsOpen((prev) => !prev);
21
- }, [setIsSettingsOpen]);
22
- const handleCloseSetting = React.useCallback(() => {
23
- setIsSettingsOpen(false);
24
- }, [setIsSettingsOpen]);
16
+ const togglePopupDisplay = React.useCallback(() => {
17
+ setIsSettingsOpen(!isSettingsOpen);
18
+ }, [isSettingsOpen]);
25
19
  const handleTransparencyChange = React.useCallback((values) => {
26
20
  if (values.length) {
27
21
  const newTransparency = values[0];
@@ -32,6 +26,6 @@ export function TransparencyPopupButton({ transparency, onTransparencyChange, bu
32
26
  }
33
27
  }
34
28
  }, [onTransparencyChange, transparency]);
35
- return (_jsxs(_Fragment, { children: [_jsx(Button, { disabled: disabled, size: "small", styleType: "borderless", title: toolTipLabel, className: "map-transparency-popup-button", onClick: togglePopupDisplay, ref: buttonRef, children: _jsx("div", { className: "transparent-button", children: _jsx("svg", { className: disabled ? "checkered-disabled" : "checkered", viewBox: "0 0 24 24", children: _jsx("path", { d: "m21.00427 0h-18.00854a2.9957 2.9957 0 0 0 -2.99573 2.99567v18.0086a2.99575 2.99575 0 0 0 2.99573 2.99573h18.00854a2.99575 2.99575 0 0 0 2.99573-2.99573v-18.0086a2.9957 2.9957 0 0 0 -2.99573-2.99567zm-20.00427 21.00427v-9.00427h11v-11h9.00427a1.998 1.998 0 0 1 1.99573 1.99567v9.00433h-11v11h-9.00427a1.998 1.998 0 0 1 -1.99573-1.99573z" }) }) }) }), _jsx(Popup, { isOpen: isSettingsOpen, position: RelativePosition.BottomRight, onClose: handleCloseSetting, target: buttonRef.current, children: _jsx("div", { className: "map-transparency-popup-panel", children: _jsx("div", { className: "map-transparency-slider-container", children: _jsx(Slider, { min: 0, max: 100, values: [transparency * 100], step: 1, onChange: handleTransparencyChange }) }) }) })] }));
29
+ return (_jsx(_Fragment, { children: _jsx(Popover, { content: _jsx("div", { className: "map-transparency-popup-panel", children: _jsx("div", { className: "map-transparency-slider-container", children: _jsx(Slider, { min: 0, max: 100, values: [transparency * 100], step: 1, onChange: handleTransparencyChange }) }) }), visible: isSettingsOpen, onVisibleChange: setIsSettingsOpen, placement: "bottom-end", applyBackground: true, positionReference: buttonRef.current ?? undefined, children: _jsx(Button, { disabled: disabled, size: "small", styleType: "borderless", title: toolTipLabel, className: "map-transparency-popup-button", onClick: togglePopupDisplay, ref: buttonRef, children: _jsx("div", { className: "transparent-button", children: _jsx("svg", { className: disabled ? "checkered-disabled" : "checkered", viewBox: "0 0 24 24", children: _jsx("path", { d: "m21.00427 0h-18.00854a2.9957 2.9957 0 0 0 -2.99573 2.99567v18.0086a2.99575 2.99575 0 0 0 2.99573 2.99573h18.00854a2.99575 2.99575 0 0 0 2.99573-2.99573v-18.0086a2.9957 2.9957 0 0 0 -2.99573-2.99567zm-20.00427 21.00427v-9.00427h11v-11h9.00427a1.998 1.998 0 0 1 1.99573 1.99567v9.00433h-11v11h-9.00427a1.998 1.998 0 0 1 -1.99573-1.99573z" }) }) }) }) }) }));
36
30
  }
37
31
  //# sourceMappingURL=TransparencyPopupButton.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TransparencyPopupButton.js","sourceRoot":"","sources":["../../../../src/ui/widget/TransparencyPopupButton.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n\nimport \"./TransparencyPopupButton.scss\";\nimport * as React from \"react\";\nimport { RelativePosition } from \"@itwin/appui-abstract\";\nimport { IModelApp } from \"@itwin/core-frontend\";\nimport { Popup } from \"@itwin/core-react\";\nimport { Button, Slider } from \"@itwin/itwinui-react\";\n\n/** @alpha */\nexport interface TransparencyPopupButtonProps {\n /** initialValue range 0-1 */\n transparency: number;\n /** function called when value changes. Returned value range 0-1 */\n onTransparencyChange: (value: number) => void;\n /** optional tooltip */\n buttonToolTip?: string;\n disabled?: boolean;\n}\n\n/** @alpha */\nexport function TransparencyPopupButton({ transparency, onTransparencyChange, buttonToolTip, disabled }: TransparencyPopupButtonProps) {\n const [isSettingsOpen, setIsSettingsOpen] = React.useState(false);\n const [defaultTransparencyLabel] = React.useState(IModelApp.localization.getLocalizedString(\"mapLayers:TransparencyPopup.SetTransparency\"));\n const toolTipLabel = React.useMemo(() => (buttonToolTip ? buttonToolTip : defaultTransparencyLabel), [buttonToolTip, defaultTransparencyLabel]);\n\n const buttonRef = React.useRef<HTMLButtonElement>(null);\n const togglePopupDisplay = React.useCallback(\n (event: React.MouseEvent<HTMLButtonElement, MouseEvent>) => {\n event.preventDefault();\n setIsSettingsOpen((prev) => !prev);\n },\n [setIsSettingsOpen],\n );\n\n const handleCloseSetting = React.useCallback(() => {\n setIsSettingsOpen(false);\n }, [setIsSettingsOpen]);\n\n const handleTransparencyChange = React.useCallback(\n (values: readonly number[]) => {\n if (values.length) {\n const newTransparency = values[0];\n if (newTransparency !== transparency) {\n if (onTransparencyChange) {\n onTransparencyChange(newTransparency / 100);\n }\n }\n }\n },\n [onTransparencyChange, transparency],\n );\n\n return (\n <>\n <Button\n disabled={disabled}\n size=\"small\"\n styleType=\"borderless\"\n title={toolTipLabel}\n className=\"map-transparency-popup-button\"\n onClick={togglePopupDisplay}\n ref={buttonRef}\n >\n <div className=\"transparent-button\">\n <svg className={disabled ? \"checkered-disabled\" : \"checkered\"} viewBox=\"0 0 24 24\">\n <path d=\"m21.00427 0h-18.00854a2.9957 2.9957 0 0 0 -2.99573 2.99567v18.0086a2.99575 2.99575 0 0 0 2.99573 2.99573h18.00854a2.99575 2.99575 0 0 0 2.99573-2.99573v-18.0086a2.9957 2.9957 0 0 0 -2.99573-2.99567zm-20.00427 21.00427v-9.00427h11v-11h9.00427a1.998 1.998 0 0 1 1.99573 1.99567v9.00433h-11v11h-9.00427a1.998 1.998 0 0 1 -1.99573-1.99573z\" />\n </svg>\n </div>\n </Button>\n {/*eslint-disable-next-line @typescript-eslint/no-deprecated */}\n <Popup isOpen={isSettingsOpen} position={RelativePosition.BottomRight} onClose={handleCloseSetting} target={buttonRef.current}>\n <div className=\"map-transparency-popup-panel\">\n <div className=\"map-transparency-slider-container\">\n <Slider min={0} max={100} values={[transparency * 100]} step={1} onChange={handleTransparencyChange} />\n </div>\n </div>\n </Popup>\n </>\n );\n}\n"]}
1
+ {"version":3,"file":"TransparencyPopupButton.js","sourceRoot":"","sources":["../../../../src/ui/widget/TransparencyPopupButton.tsx"],"names":[],"mappings":";AAAA;;;gGAGgG;AAEhG,OAAO,gCAAgC,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAa/D,aAAa;AACb,MAAM,UAAU,uBAAuB,CAAC,EAAE,YAAY,EAAE,oBAAoB,EAAE,aAAa,EAAE,QAAQ,EAAgC;IACnI,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAClE,MAAM,CAAC,wBAAwB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,YAAY,CAAC,kBAAkB,CAAC,6CAA6C,CAAC,CAAC,CAAC;IAC5I,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,wBAAwB,CAAC,EAAE,CAAC,aAAa,EAAE,wBAAwB,CAAC,CAAC,CAAC;IAEhJ,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAoB,IAAI,CAAC,CAAC;IACxD,MAAM,kBAAkB,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QAC9C,iBAAiB,CAAC,CAAC,cAAc,CAAC,CAAC;IACrC,CAAC,EACD,CAAC,cAAc,CAAC,CACjB,CAAC;IAEF,MAAM,wBAAwB,GAAG,KAAK,CAAC,WAAW,CAChD,CAAC,MAAyB,EAAE,EAAE;QAC5B,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAClB,MAAM,eAAe,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YAClC,IAAI,eAAe,KAAK,YAAY,EAAE,CAAC;gBACrC,IAAI,oBAAoB,EAAE,CAAC;oBACzB,oBAAoB,CAAC,eAAe,GAAG,GAAG,CAAC,CAAC;gBAC9C,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC,EACD,CAAC,oBAAoB,EAAE,YAAY,CAAC,CACrC,CAAC;IAEF,OAAO,CACL,4BACE,KAAC,OAAO,IACN,OAAO,EACL,cAAK,SAAS,EAAC,8BAA8B,YAC3C,cAAK,SAAS,EAAC,mCAAmC,YAChD,KAAC,MAAM,IAAC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,YAAY,GAAG,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,wBAAwB,GAAI,GACnG,GACF,EAER,OAAO,EAAE,cAAc,EACvB,eAAe,EAAE,iBAAiB,EAClC,SAAS,EAAC,YAAY,EACtB,eAAe,QACf,iBAAiB,EAAE,SAAS,CAAC,OAAO,IAAI,SAAS,YAEjD,KAAC,MAAM,IACL,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAC,OAAO,EACZ,SAAS,EAAC,YAAY,EACtB,KAAK,EAAE,YAAY,EACnB,SAAS,EAAC,+BAA+B,EACzC,OAAO,EAAE,kBAAkB,EAC3B,GAAG,EAAE,SAAS,YAEd,cAAK,SAAS,EAAC,oBAAoB,YACjC,cAAK,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,WAAW,EAAE,OAAO,EAAC,WAAW,YAChF,eAAM,CAAC,EAAC,iVAAiV,GAAG,GACxV,GACF,GACC,GACD,GACT,CACJ,CAAC;AACJ,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n\nimport \"./TransparencyPopupButton.scss\";\nimport * as React from \"react\";\nimport { IModelApp } from \"@itwin/core-frontend\";\nimport { Button, Popover, Slider } from \"@itwin/itwinui-react\";\n\n/** @alpha */\nexport interface TransparencyPopupButtonProps {\n /** initialValue range 0-1 */\n transparency: number;\n /** function called when value changes. Returned value range 0-1 */\n onTransparencyChange: (value: number) => void;\n /** optional tooltip */\n buttonToolTip?: string;\n disabled?: boolean;\n}\n\n/** @alpha */\nexport function TransparencyPopupButton({ transparency, onTransparencyChange, buttonToolTip, disabled }: TransparencyPopupButtonProps) {\n const [isSettingsOpen, setIsSettingsOpen] = React.useState(false);\n const [defaultTransparencyLabel] = React.useState(IModelApp.localization.getLocalizedString(\"mapLayers:TransparencyPopup.SetTransparency\"));\n const toolTipLabel = React.useMemo(() => (buttonToolTip ? buttonToolTip : defaultTransparencyLabel), [buttonToolTip, defaultTransparencyLabel]);\n\n const buttonRef = React.useRef<HTMLButtonElement>(null);\n const togglePopupDisplay = React.useCallback(() => {\n setIsSettingsOpen(!isSettingsOpen);\n },\n [isSettingsOpen],\n );\n\n const handleTransparencyChange = React.useCallback(\n (values: readonly number[]) => {\n if (values.length) {\n const newTransparency = values[0];\n if (newTransparency !== transparency) {\n if (onTransparencyChange) {\n onTransparencyChange(newTransparency / 100);\n }\n }\n }\n },\n [onTransparencyChange, transparency],\n );\n\n return (\n <>\n <Popover\n content={\n <div className=\"map-transparency-popup-panel\">\n <div className=\"map-transparency-slider-container\">\n <Slider min={0} max={100} values={[transparency * 100]} step={1} onChange={handleTransparencyChange} />\n </div>\n </div>\n }\n visible={isSettingsOpen}\n onVisibleChange={setIsSettingsOpen}\n placement=\"bottom-end\"\n applyBackground\n positionReference={buttonRef.current ?? undefined}\n >\n <Button\n disabled={disabled}\n size=\"small\"\n styleType=\"borderless\"\n title={toolTipLabel}\n className=\"map-transparency-popup-button\"\n onClick={togglePopupDisplay}\n ref={buttonRef}\n >\n <div className=\"transparent-button\">\n <svg className={disabled ? \"checkered-disabled\" : \"checkered\"} viewBox=\"0 0 24 24\">\n <path d=\"m21.00427 0h-18.00854a2.9957 2.9957 0 0 0 -2.99573 2.99567v18.0086a2.99575 2.99575 0 0 0 2.99573 2.99573h18.00854a2.99575 2.99575 0 0 0 2.99573-2.99573v-18.0086a2.9957 2.9957 0 0 0 -2.99573-2.99567zm-20.00427 21.00427v-9.00427h11v-11h9.00427a1.998 1.998 0 0 1 1.99573 1.99567v9.00433h-11v11h-9.00427a1.998 1.998 0 0 1 -1.99573-1.99573z\" />\n </svg>\n </div>\n </Button>\n </Popover>\n </>\n );\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@itwin/map-layers",
3
- "version": "6.0.0-dev.0",
3
+ "version": "6.0.0-dev.1",
4
4
  "description": "Extension that adds a Map Layers Widget",
5
5
  "main": "lib/cjs/map-layers.js",
6
6
  "module": "lib/esm/map-layers.js",