m2m-components 0.4.1 → 1.0.0

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.
@@ -61,7 +61,7 @@ export var LitMenuBaseElement = _decorate(null, function (_initialize, _LitEleme
61
61
  key: "styles",
62
62
 
63
63
  value() {
64
- return css(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n nav {\n position: relative;\n display: flex;\n }\n .navigation-drawer-controll-button {\n background-color: transparent;\n border: none;\n cursor: pointer;\n padding: 0;\n appearance: none;\n\n height: 42px;\n display: flex;\n justify-content: center;\n align-items: center;\n transition: background-color 0.2s;\n }\n .navigation-drawer-controll-button.navigation-drawer-controll-button--icon {\n width: 42px;\n }\n .navigation-drawer-controll-button:hover {\n background-color: rgba(0, 0, 0, 0.05);\n }\n .navigation-drawer-controll-button:active {\n background-color: rgba(0, 0, 0, 0.075);\n }\n\n .navigation-drawer {\n position: absolute;\n top: 100%;\n min-width: 200px;\n white-space: nowrap;\n box-sizing: border-box;\n list-style: none;\n padding: 0px;\n margin: 0px;\n z-index: 1;\n box-shadow: 0px 1px 3px 0px rgb(0 0 0 / 20%),\n 0px 1px 1px 0px rgb(0 0 0 / 14%), 0px 2px 1px -1px rgb(0 0 0 / 12%);\n background-color: #fff;\n color: rgba(0, 0, 0, 0.87);\n border-radius: 5px;\n }\n .navigation-drawer.navigation-drawer__bottom-end {\n right: 0px;\n }\n .navigation-drawer-controll-button[aria-expanded=\"false\"]\n ~ .navigation-drawer {\n display: none;\n }\n\n .navigation-drawer li {\n border-bottom: 1px solid #eeeeee;\n }\n .navigation-drawer li:last-of-type {\n border-bottom: none;\n }\n .navigation-drawer li > a,\n .navigation-drawer li > button {\n width: 100%;\n text-align: left;\n background-color: transparent;\n border: none;\n cursor: pointer;\n padding: 0;\n appearance: none;\n cursor: pointer;\n font: inherit;\n display: block;\n box-sizing: border-box;\n padding: 0.6em 1em;\n color: inherit;\n text-decoration: none;\n transition: 0.2s;\n }\n .navigation-drawer li > a:hover,\n .navigation-drawer li > button:hover {\n background-color: #ededed;\n }\n .navigation-drawer li > a:active,\n .navigation-drawer li > button:active {\n background-color: #dadada;\n }\n "])));
64
+ return css(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n nav {\n position: relative;\n display: flex;\n }\n .navigation-drawer-controll-button {\n background-color: transparent;\n border: none;\n cursor: pointer;\n padding: 0;\n appearance: none;\n\n height: 42px;\n display: flex;\n justify-content: center;\n align-items: center;\n transition: background-color 0.2s;\n }\n .navigation-drawer-controll-button.navigation-drawer-controll-button--icon {\n width: 42px;\n }\n .navigation-drawer-controll-button:hover {\n background-color: rgba(0, 0, 0, 0.05);\n }\n .navigation-drawer-controll-button:active {\n background-color: rgba(0, 0, 0, 0.075);\n }\n\n .navigation-drawer {\n position: absolute;\n top: 100%;\n right: 0px;\n min-width: 200px;\n white-space: nowrap;\n box-sizing: border-box;\n list-style: none;\n padding: 0px;\n margin: 0px;\n z-index: 1;\n box-shadow: 0px 1px 3px 0px rgb(0 0 0 / 20%),\n 0px 1px 1px 0px rgb(0 0 0 / 14%), 0px 2px 1px -1px rgb(0 0 0 / 12%);\n background-color: #fff;\n color: rgba(0, 0, 0, 0.87);\n border-radius: 5px;\n }\n .navigation-drawer-controll-button[aria-expanded=\"false\"]\n ~ .navigation-drawer {\n display: none;\n }\n\n .navigation-drawer li {\n border-bottom: 1px solid #eeeeee;\n }\n .navigation-drawer li:last-of-type {\n border-bottom: none;\n }\n .navigation-drawer li > a,\n .navigation-drawer li > button {\n width: 100%;\n text-align: left;\n background-color: transparent;\n border: none;\n cursor: pointer;\n padding: 0;\n appearance: none;\n cursor: pointer;\n font: inherit;\n display: block;\n box-sizing: border-box;\n padding: 0.6em 1em;\n color: inherit;\n text-decoration: none;\n transition: 0.2s;\n }\n .navigation-drawer li > a:hover,\n .navigation-drawer li > button:hover {\n background-color: #ededed;\n }\n .navigation-drawer li > a:active,\n .navigation-drawer li > button:active {\n background-color: #dadada;\n }\n "])));
65
65
  }
66
66
 
67
67
  }, {
@@ -1 +1 @@
1
- {"version":3,"sources":["src/LitMenuBaseElement.ts"],"names":["css","LitElement","property","createRef","LitMenuBaseElement","event","listRef","value","contains","composedPath","expanded","preventDefault","stopPropagation","window","addEventListener","handleClickOutside","removeEventListener"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,SAASA,GAAT,EAAcC,UAAd,QAAgC,KAAhC;AACA,SAASC,QAAT,QAAyB,mBAAzB;AACA,SAASC,SAAT,QAA0B,uBAA1B;AAEA,WAAaC,kBAAb;AAAO,QAAMA,kBAAN,qBAA4C;AAAA;AAAA;;AAAA;AAAA;;AAAA;;AAAnD;AAAA,OAAaA,kBAAb;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA,eACkBJ,GADlB;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA,eAuFwBK,KAAD,IAAoC;AACvD,cACE,CAAC,KAAKC,OAAL,CAAaC,KAAd,IACA,KAAKD,OAAL,CAAaC,KAAb,CAAmBC,QAAnB,CAA4BH,KAAK,CAACI,YAAN,GAAqB,CAArB,CAA5B,CAFF,EAGE;AACA;AACD;;AACD,eAAKC,QAAL,GAAgB,KAAhB;AACD,SA/FH;AAAA;;AAAA;AAAA;AAAA,mBAiGGR,QAAQ,EAjGX;AAAA;;AAAA;AAAA,eAkGuB,KAlGvB;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA,eAoGwBG,KAAD,IAAkB;AACrCA,UAAAA,KAAK,CAACM,cAAN;AACAN,UAAAA,KAAK,CAACO,eAAN;AAEA,eAAKF,QAAL,GAAgB,CAAC,KAAKA,QAAtB;;AACA,cAAI,KAAKA,QAAT,EAAmB;AACjBG,YAAAA,MAAM,CAACC,gBAAP,CAAwB,OAAxB,EAAiC,KAAKC,kBAAtC,EAA0D,KAA1D;AACD;AACF,SA5GH;AAAA;;AAAA;AAAA;AAAA;AAAA,aA8GE,mBAAoB;AAClB,YAAI,KAAKL,QAAL,KAAkB,KAAtB,EAA6B;AAC3BG,UAAAA,MAAM,CAACG,mBAAP,CAA2B,OAA3B,EAAoC,KAAKD,kBAAzC,EAA6D,KAA7D;AACD;AACF;AAlHH;AAAA;AAAA;AAAA,aAoHE,gCAA6B;AAC3B,6BArHSX,kBAqHT;;AACAS,QAAAA,MAAM,CAACG,mBAAP,CAA2B,OAA3B,EAAoC,KAAKD,kBAAzC,EAA6D,KAA7D;AACD;AAvHH;AAAA;AAAA;;AAAA;AAAA,eAyHYZ,SAAS,EAzHrB;AAAA;;AAAA;AAAA;AAAA,GAAwCF,UAAxC","sourcesContent":["import { css, LitElement } from \"lit\";\nimport { property } from \"lit/decorators.js\";\nimport { createRef } from \"lit/directives/ref.js\";\n\nexport class LitMenuBaseElement extends LitElement {\n static styles = css`\n nav {\n position: relative;\n display: flex;\n }\n .navigation-drawer-controll-button {\n background-color: transparent;\n border: none;\n cursor: pointer;\n padding: 0;\n appearance: none;\n\n height: 42px;\n display: flex;\n justify-content: center;\n align-items: center;\n transition: background-color 0.2s;\n }\n .navigation-drawer-controll-button.navigation-drawer-controll-button--icon {\n width: 42px;\n }\n .navigation-drawer-controll-button:hover {\n background-color: rgba(0, 0, 0, 0.05);\n }\n .navigation-drawer-controll-button:active {\n background-color: rgba(0, 0, 0, 0.075);\n }\n\n .navigation-drawer {\n position: absolute;\n top: 100%;\n min-width: 200px;\n white-space: nowrap;\n box-sizing: border-box;\n list-style: none;\n padding: 0px;\n margin: 0px;\n z-index: 1;\n box-shadow: 0px 1px 3px 0px rgb(0 0 0 / 20%),\n 0px 1px 1px 0px rgb(0 0 0 / 14%), 0px 2px 1px -1px rgb(0 0 0 / 12%);\n background-color: #fff;\n color: rgba(0, 0, 0, 0.87);\n border-radius: 5px;\n }\n .navigation-drawer.navigation-drawer__bottom-end {\n right: 0px;\n }\n .navigation-drawer-controll-button[aria-expanded=\"false\"]\n ~ .navigation-drawer {\n display: none;\n }\n\n .navigation-drawer li {\n border-bottom: 1px solid #eeeeee;\n }\n .navigation-drawer li:last-of-type {\n border-bottom: none;\n }\n .navigation-drawer li > a,\n .navigation-drawer li > button {\n width: 100%;\n text-align: left;\n background-color: transparent;\n border: none;\n cursor: pointer;\n padding: 0;\n appearance: none;\n cursor: pointer;\n font: inherit;\n display: block;\n box-sizing: border-box;\n padding: 0.6em 1em;\n color: inherit;\n text-decoration: none;\n transition: 0.2s;\n }\n .navigation-drawer li > a:hover,\n .navigation-drawer li > button:hover {\n background-color: #ededed;\n }\n .navigation-drawer li > a:active,\n .navigation-drawer li > button:active {\n background-color: #dadada;\n }\n `;\n\n handleClickOutside = (event: MouseEvent | TouchEvent) => {\n if (\n !this.listRef.value ||\n this.listRef.value.contains(event.composedPath()[0] as Node)\n ) {\n return;\n }\n this.expanded = false;\n };\n\n @property()\n expanded?: boolean = false;\n\n handleToggleDrawer = (event: Event) => {\n event.preventDefault();\n event.stopPropagation();\n\n this.expanded = !this.expanded;\n if (this.expanded) {\n window.addEventListener(\"click\", this.handleClickOutside, false);\n }\n };\n\n protected updated() {\n if (this.expanded === false) {\n window.removeEventListener(\"click\", this.handleClickOutside, false);\n }\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback();\n window.removeEventListener(\"click\", this.handleClickOutside, false);\n }\n\n listRef = createRef();\n}\n"],"file":"LitMenuBaseElement.js"}
1
+ {"version":3,"sources":["src/LitMenuBaseElement.ts"],"names":["css","LitElement","property","createRef","LitMenuBaseElement","event","listRef","value","contains","composedPath","expanded","preventDefault","stopPropagation","window","addEventListener","handleClickOutside","removeEventListener"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,SAASA,GAAT,EAAcC,UAAd,QAAgC,KAAhC;AACA,SAASC,QAAT,QAAyB,mBAAzB;AACA,SAASC,SAAT,QAA0B,uBAA1B;AAEA,WAAaC,kBAAb;AAAO,QAAMA,kBAAN,qBAA4C;AAAA;AAAA;;AAAA;AAAA;;AAAA;;AAAnD;AAAA,OAAaA,kBAAb;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA,eACkBJ,GADlB;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA,eAqFwBK,KAAD,IAAoC;AACvD,cACE,CAAC,KAAKC,OAAL,CAAaC,KAAd,IACA,KAAKD,OAAL,CAAaC,KAAb,CAAmBC,QAAnB,CAA4BH,KAAK,CAACI,YAAN,GAAqB,CAArB,CAA5B,CAFF,EAGE;AACA;AACD;;AACD,eAAKC,QAAL,GAAgB,KAAhB;AACD,SA7FH;AAAA;;AAAA;AAAA;AAAA,mBA+FGR,QAAQ,EA/FX;AAAA;;AAAA;AAAA,eAgGuB,KAhGvB;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA,eAkGwBG,KAAD,IAAkB;AACrCA,UAAAA,KAAK,CAACM,cAAN;AACAN,UAAAA,KAAK,CAACO,eAAN;AAEA,eAAKF,QAAL,GAAgB,CAAC,KAAKA,QAAtB;;AACA,cAAI,KAAKA,QAAT,EAAmB;AACjBG,YAAAA,MAAM,CAACC,gBAAP,CAAwB,OAAxB,EAAiC,KAAKC,kBAAtC,EAA0D,KAA1D;AACD;AACF,SA1GH;AAAA;;AAAA;AAAA;AAAA;AAAA,aA4GE,mBAAoB;AAClB,YAAI,KAAKL,QAAL,KAAkB,KAAtB,EAA6B;AAC3BG,UAAAA,MAAM,CAACG,mBAAP,CAA2B,OAA3B,EAAoC,KAAKD,kBAAzC,EAA6D,KAA7D;AACD;AACF;AAhHH;AAAA;AAAA;AAAA,aAkHE,gCAA6B;AAC3B,6BAnHSX,kBAmHT;;AACAS,QAAAA,MAAM,CAACG,mBAAP,CAA2B,OAA3B,EAAoC,KAAKD,kBAAzC,EAA6D,KAA7D;AACD;AArHH;AAAA;AAAA;;AAAA;AAAA,eAuHYZ,SAAS,EAvHrB;AAAA;;AAAA;AAAA;AAAA,GAAwCF,UAAxC","sourcesContent":["import { css, LitElement } from \"lit\";\nimport { property } from \"lit/decorators.js\";\nimport { createRef } from \"lit/directives/ref.js\";\n\nexport class LitMenuBaseElement extends LitElement {\n static styles = css`\n nav {\n position: relative;\n display: flex;\n }\n .navigation-drawer-controll-button {\n background-color: transparent;\n border: none;\n cursor: pointer;\n padding: 0;\n appearance: none;\n\n height: 42px;\n display: flex;\n justify-content: center;\n align-items: center;\n transition: background-color 0.2s;\n }\n .navigation-drawer-controll-button.navigation-drawer-controll-button--icon {\n width: 42px;\n }\n .navigation-drawer-controll-button:hover {\n background-color: rgba(0, 0, 0, 0.05);\n }\n .navigation-drawer-controll-button:active {\n background-color: rgba(0, 0, 0, 0.075);\n }\n\n .navigation-drawer {\n position: absolute;\n top: 100%;\n right: 0px;\n min-width: 200px;\n white-space: nowrap;\n box-sizing: border-box;\n list-style: none;\n padding: 0px;\n margin: 0px;\n z-index: 1;\n box-shadow: 0px 1px 3px 0px rgb(0 0 0 / 20%),\n 0px 1px 1px 0px rgb(0 0 0 / 14%), 0px 2px 1px -1px rgb(0 0 0 / 12%);\n background-color: #fff;\n color: rgba(0, 0, 0, 0.87);\n border-radius: 5px;\n }\n .navigation-drawer-controll-button[aria-expanded=\"false\"]\n ~ .navigation-drawer {\n display: none;\n }\n\n .navigation-drawer li {\n border-bottom: 1px solid #eeeeee;\n }\n .navigation-drawer li:last-of-type {\n border-bottom: none;\n }\n .navigation-drawer li > a,\n .navigation-drawer li > button {\n width: 100%;\n text-align: left;\n background-color: transparent;\n border: none;\n cursor: pointer;\n padding: 0;\n appearance: none;\n cursor: pointer;\n font: inherit;\n display: block;\n box-sizing: border-box;\n padding: 0.6em 1em;\n color: inherit;\n text-decoration: none;\n transition: 0.2s;\n }\n .navigation-drawer li > a:hover,\n .navigation-drawer li > button:hover {\n background-color: #ededed;\n }\n .navigation-drawer li > a:active,\n .navigation-drawer li > button:active {\n background-color: #dadada;\n }\n `;\n\n handleClickOutside = (event: MouseEvent | TouchEvent) => {\n if (\n !this.listRef.value ||\n this.listRef.value.contains(event.composedPath()[0] as Node)\n ) {\n return;\n }\n this.expanded = false;\n };\n\n @property()\n expanded?: boolean = false;\n\n handleToggleDrawer = (event: Event) => {\n event.preventDefault();\n event.stopPropagation();\n\n this.expanded = !this.expanded;\n if (this.expanded) {\n window.addEventListener(\"click\", this.handleClickOutside, false);\n }\n };\n\n protected updated() {\n if (this.expanded === false) {\n window.removeEventListener(\"click\", this.handleClickOutside, false);\n }\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback();\n window.removeEventListener(\"click\", this.handleClickOutside, false);\n }\n\n listRef = createRef();\n}\n"],"file":"LitMenuBaseElement.js"}
@@ -98,6 +98,7 @@ let LitMenuBaseElement = _decorate(null, function (_initialize, _LitElement) {
98
98
  .navigation-drawer {
99
99
  position: absolute;
100
100
  top: 100%;
101
+ right: 0px;
101
102
  min-width: 200px;
102
103
  white-space: nowrap;
103
104
  box-sizing: border-box;
@@ -111,9 +112,6 @@ let LitMenuBaseElement = _decorate(null, function (_initialize, _LitElement) {
111
112
  color: rgba(0, 0, 0, 0.87);
112
113
  border-radius: 5px;
113
114
  }
114
- .navigation-drawer.navigation-drawer__bottom-end {
115
- right: 0px;
116
- }
117
115
  .navigation-drawer-controll-button[aria-expanded="false"]
118
116
  ~ .navigation-drawer {
119
117
  display: none;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/LitMenuBaseElement.ts"],"names":["LitMenuBaseElement","event","listRef","value","contains","composedPath","expanded","preventDefault","stopPropagation","window","addEventListener","handleClickOutside","removeEventListener","LitElement"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEaA,kB;AAAN,QAAMA,kBAAN,qBAA4C;AAAA;AAAA;;AAAA;AAAA;;AAAA;;;OAAtCA,kB;;;;;;;eACK,aAAI;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,G;;;;;;;;eAEwBC,KAAD,IAAoC;AACvD,cACE,CAAC,KAAKC,OAAL,CAAaC,KAAd,IACA,KAAKD,OAAL,CAAaC,KAAb,CAAmBC,QAAnB,CAA4BH,KAAK,CAACI,YAAN,GAAqB,CAArB,CAA5B,CAFF,EAGE;AACA;AACD;;AACD,eAAKC,QAAL,GAAgB,KAAhB;AACD,S;;;;;mBAEA,2B;;;;eACoB,K;;;;;;;;eAECL,KAAD,IAAkB;AACrCA,UAAAA,KAAK,CAACM,cAAN;AACAN,UAAAA,KAAK,CAACO,eAAN;AAEA,eAAKF,QAAL,GAAgB,CAAC,KAAKA,QAAtB;;AACA,cAAI,KAAKA,QAAT,EAAmB;AACjBG,YAAAA,MAAM,CAACC,gBAAP,CAAwB,OAAxB,EAAiC,KAAKC,kBAAtC,EAA0D,KAA1D;AACD;AACF,S;;;;;;aAED,mBAAoB;AAClB,YAAI,KAAKL,QAAL,KAAkB,KAAtB,EAA6B;AAC3BG,UAAAA,MAAM,CAACG,mBAAP,CAA2B,OAA3B,EAAoC,KAAKD,kBAAzC,EAA6D,KAA7D;AACD;AACF;;;;aAED,gCAA6B;AAC3B,6BArHSX,kBAqHT;;AACAS,QAAAA,MAAM,CAACG,mBAAP,CAA2B,OAA3B,EAAoC,KAAKD,kBAAzC,EAA6D,KAA7D;AACD;;;;;;eAES,qB;;;;;GAzH4BE,e","sourcesContent":["import { css, LitElement } from \"lit\";\nimport { property } from \"lit/decorators.js\";\nimport { createRef } from \"lit/directives/ref.js\";\n\nexport class LitMenuBaseElement extends LitElement {\n static styles = css`\n nav {\n position: relative;\n display: flex;\n }\n .navigation-drawer-controll-button {\n background-color: transparent;\n border: none;\n cursor: pointer;\n padding: 0;\n appearance: none;\n\n height: 42px;\n display: flex;\n justify-content: center;\n align-items: center;\n transition: background-color 0.2s;\n }\n .navigation-drawer-controll-button.navigation-drawer-controll-button--icon {\n width: 42px;\n }\n .navigation-drawer-controll-button:hover {\n background-color: rgba(0, 0, 0, 0.05);\n }\n .navigation-drawer-controll-button:active {\n background-color: rgba(0, 0, 0, 0.075);\n }\n\n .navigation-drawer {\n position: absolute;\n top: 100%;\n min-width: 200px;\n white-space: nowrap;\n box-sizing: border-box;\n list-style: none;\n padding: 0px;\n margin: 0px;\n z-index: 1;\n box-shadow: 0px 1px 3px 0px rgb(0 0 0 / 20%),\n 0px 1px 1px 0px rgb(0 0 0 / 14%), 0px 2px 1px -1px rgb(0 0 0 / 12%);\n background-color: #fff;\n color: rgba(0, 0, 0, 0.87);\n border-radius: 5px;\n }\n .navigation-drawer.navigation-drawer__bottom-end {\n right: 0px;\n }\n .navigation-drawer-controll-button[aria-expanded=\"false\"]\n ~ .navigation-drawer {\n display: none;\n }\n\n .navigation-drawer li {\n border-bottom: 1px solid #eeeeee;\n }\n .navigation-drawer li:last-of-type {\n border-bottom: none;\n }\n .navigation-drawer li > a,\n .navigation-drawer li > button {\n width: 100%;\n text-align: left;\n background-color: transparent;\n border: none;\n cursor: pointer;\n padding: 0;\n appearance: none;\n cursor: pointer;\n font: inherit;\n display: block;\n box-sizing: border-box;\n padding: 0.6em 1em;\n color: inherit;\n text-decoration: none;\n transition: 0.2s;\n }\n .navigation-drawer li > a:hover,\n .navigation-drawer li > button:hover {\n background-color: #ededed;\n }\n .navigation-drawer li > a:active,\n .navigation-drawer li > button:active {\n background-color: #dadada;\n }\n `;\n\n handleClickOutside = (event: MouseEvent | TouchEvent) => {\n if (\n !this.listRef.value ||\n this.listRef.value.contains(event.composedPath()[0] as Node)\n ) {\n return;\n }\n this.expanded = false;\n };\n\n @property()\n expanded?: boolean = false;\n\n handleToggleDrawer = (event: Event) => {\n event.preventDefault();\n event.stopPropagation();\n\n this.expanded = !this.expanded;\n if (this.expanded) {\n window.addEventListener(\"click\", this.handleClickOutside, false);\n }\n };\n\n protected updated() {\n if (this.expanded === false) {\n window.removeEventListener(\"click\", this.handleClickOutside, false);\n }\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback();\n window.removeEventListener(\"click\", this.handleClickOutside, false);\n }\n\n listRef = createRef();\n}\n"],"file":"LitMenuBaseElement.js"}
1
+ {"version":3,"sources":["../src/LitMenuBaseElement.ts"],"names":["LitMenuBaseElement","event","listRef","value","contains","composedPath","expanded","preventDefault","stopPropagation","window","addEventListener","handleClickOutside","removeEventListener","LitElement"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEaA,kB;AAAN,QAAMA,kBAAN,qBAA4C;AAAA;AAAA;;AAAA;AAAA;;AAAA;;;OAAtCA,kB;;;;;;;eACK,aAAI;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,G;;;;;;;;eAEwBC,KAAD,IAAoC;AACvD,cACE,CAAC,KAAKC,OAAL,CAAaC,KAAd,IACA,KAAKD,OAAL,CAAaC,KAAb,CAAmBC,QAAnB,CAA4BH,KAAK,CAACI,YAAN,GAAqB,CAArB,CAA5B,CAFF,EAGE;AACA;AACD;;AACD,eAAKC,QAAL,GAAgB,KAAhB;AACD,S;;;;;mBAEA,2B;;;;eACoB,K;;;;;;;;eAECL,KAAD,IAAkB;AACrCA,UAAAA,KAAK,CAACM,cAAN;AACAN,UAAAA,KAAK,CAACO,eAAN;AAEA,eAAKF,QAAL,GAAgB,CAAC,KAAKA,QAAtB;;AACA,cAAI,KAAKA,QAAT,EAAmB;AACjBG,YAAAA,MAAM,CAACC,gBAAP,CAAwB,OAAxB,EAAiC,KAAKC,kBAAtC,EAA0D,KAA1D;AACD;AACF,S;;;;;;aAED,mBAAoB;AAClB,YAAI,KAAKL,QAAL,KAAkB,KAAtB,EAA6B;AAC3BG,UAAAA,MAAM,CAACG,mBAAP,CAA2B,OAA3B,EAAoC,KAAKD,kBAAzC,EAA6D,KAA7D;AACD;AACF;;;;aAED,gCAA6B;AAC3B,6BAnHSX,kBAmHT;;AACAS,QAAAA,MAAM,CAACG,mBAAP,CAA2B,OAA3B,EAAoC,KAAKD,kBAAzC,EAA6D,KAA7D;AACD;;;;;;eAES,qB;;;;;GAvH4BE,e","sourcesContent":["import { css, LitElement } from \"lit\";\nimport { property } from \"lit/decorators.js\";\nimport { createRef } from \"lit/directives/ref.js\";\n\nexport class LitMenuBaseElement extends LitElement {\n static styles = css`\n nav {\n position: relative;\n display: flex;\n }\n .navigation-drawer-controll-button {\n background-color: transparent;\n border: none;\n cursor: pointer;\n padding: 0;\n appearance: none;\n\n height: 42px;\n display: flex;\n justify-content: center;\n align-items: center;\n transition: background-color 0.2s;\n }\n .navigation-drawer-controll-button.navigation-drawer-controll-button--icon {\n width: 42px;\n }\n .navigation-drawer-controll-button:hover {\n background-color: rgba(0, 0, 0, 0.05);\n }\n .navigation-drawer-controll-button:active {\n background-color: rgba(0, 0, 0, 0.075);\n }\n\n .navigation-drawer {\n position: absolute;\n top: 100%;\n right: 0px;\n min-width: 200px;\n white-space: nowrap;\n box-sizing: border-box;\n list-style: none;\n padding: 0px;\n margin: 0px;\n z-index: 1;\n box-shadow: 0px 1px 3px 0px rgb(0 0 0 / 20%),\n 0px 1px 1px 0px rgb(0 0 0 / 14%), 0px 2px 1px -1px rgb(0 0 0 / 12%);\n background-color: #fff;\n color: rgba(0, 0, 0, 0.87);\n border-radius: 5px;\n }\n .navigation-drawer-controll-button[aria-expanded=\"false\"]\n ~ .navigation-drawer {\n display: none;\n }\n\n .navigation-drawer li {\n border-bottom: 1px solid #eeeeee;\n }\n .navigation-drawer li:last-of-type {\n border-bottom: none;\n }\n .navigation-drawer li > a,\n .navigation-drawer li > button {\n width: 100%;\n text-align: left;\n background-color: transparent;\n border: none;\n cursor: pointer;\n padding: 0;\n appearance: none;\n cursor: pointer;\n font: inherit;\n display: block;\n box-sizing: border-box;\n padding: 0.6em 1em;\n color: inherit;\n text-decoration: none;\n transition: 0.2s;\n }\n .navigation-drawer li > a:hover,\n .navigation-drawer li > button:hover {\n background-color: #ededed;\n }\n .navigation-drawer li > a:active,\n .navigation-drawer li > button:active {\n background-color: #dadada;\n }\n `;\n\n handleClickOutside = (event: MouseEvent | TouchEvent) => {\n if (\n !this.listRef.value ||\n this.listRef.value.contains(event.composedPath()[0] as Node)\n ) {\n return;\n }\n this.expanded = false;\n };\n\n @property()\n expanded?: boolean = false;\n\n handleToggleDrawer = (event: Event) => {\n event.preventDefault();\n event.stopPropagation();\n\n this.expanded = !this.expanded;\n if (this.expanded) {\n window.addEventListener(\"click\", this.handleClickOutside, false);\n }\n };\n\n protected updated() {\n if (this.expanded === false) {\n window.removeEventListener(\"click\", this.handleClickOutside, false);\n }\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback();\n window.removeEventListener(\"click\", this.handleClickOutside, false);\n }\n\n listRef = createRef();\n}\n"],"file":"LitMenuBaseElement.js"}
@@ -96,7 +96,7 @@ let M2MUserMenu = _decorate([(0, _decorators.customElement)("m2m-user-menu")], f
96
96
  ${(0, _ref.ref)(this.listRef)}
97
97
  id="m2m-user-menu__navigation-drawer"
98
98
  aria-hidden=${!this.expanded}
99
- class="navigation-drawer navigation-drawer__bottom-end"
99
+ class="navigation-drawer"
100
100
  >
101
101
  <li><a href="${_domains.domains.users}">アカウント情報</a></li>
102
102
  <li @click=${this.handleLogout}>
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/m2m-user-menu.ts"],"names":["M2MUserMenu","m2mAuthTokenApi","clear","window","location","reload","expanded","handleToggleDrawer","listRef","domains","users","handleLogout","LitMenuBaseElement"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAGaA,W,cADZ,+BAAc,eAAd,C;AAAD,QACaA,WADb,6BACoD;AAAA;AAAA;;AAAA;AAAA;;AAAA;;;OAAvCA,W;;;;;;eACI,MAAM;AACnBC,kCAAgBC,KAAhB;;AACAC,UAAAA,MAAM,CAACC,QAAP,CAAgBC,MAAhB;AACD,S;;;;;;aAED,kBAAS;AACP,eAAO,cAAK;AAChB;AACA;AACA;AACA;AACA,wBAAwB,KAAKC,QAAS;AACtC,iBAAiB,KAAKC,kBAAmB;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,cAAI,KAAKC,OAAT,CAAkB;AAC5B;AACA,sBAAsB,CAAC,KAAKF,QAAS;AACrC;AACA;AACA,uBAAuBG,iBAAQC,KAAM;AACrC,qBAAqB,KAAKC,YAAa;AACvC;AACA;AACA;AACA,WA1BI;AA2BD;;;GAlC8BC,uC","sourcesContent":["import { m2mAuthTokenApi } from \"./storage/client\";\nimport { domains } from \"./domains\";\nimport { html } from \"lit\";\nimport { customElement } from \"lit/decorators.js\";\nimport { ref } from \"lit/directives/ref.js\";\nimport { LitMenuBaseElement } from \"./LitMenuBaseElement\";\n\n@customElement(\"m2m-user-menu\")\nexport class M2MUserMenu extends LitMenuBaseElement {\n handleLogout = () => {\n m2mAuthTokenApi.clear();\n window.location.reload();\n };\n\n render() {\n return html`<nav>\n <button\n type=\"button\"\n class=\"navigation-drawer-controll-button navigation-drawer-controll-button--icon\"\n aria-controls=\"m2m-user-menu__navigation-drawer\"\n aria-expanded=${this.expanded}\n @click=${this.handleToggleDrawer}\n >\n <svg viewBox=\"0 0 24 24\" width=\"32px\" height=\"32px\" fill=\"#000000\">\n <path d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path\n d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 3c1.66 0 3 1.34 3 3s-1.34 3-3 3-3-1.34-3-3 1.34-3 3-3zm0 14.2c-2.5 0-4.71-1.28-6-3.22.03-1.99 4-3.08 6-3.08 1.99 0 5.97 1.09 6 3.08-1.29 1.94-3.5 3.22-6 3.22z\"\n />\n </svg>\n </button>\n <ul\n ${ref(this.listRef)}\n id=\"m2m-user-menu__navigation-drawer\"\n aria-hidden=${!this.expanded}\n class=\"navigation-drawer navigation-drawer__bottom-end\"\n >\n <li><a href=\"${domains.users}\">アカウント情報</a></li>\n <li @click=${this.handleLogout}>\n <button type=\"button\">ログアウト</button>\n </li>\n </ul>\n </nav>`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n \"m2m-user-menu\": M2MUserMenu;\n }\n}\n"],"file":"m2m-user-menu.js"}
1
+ {"version":3,"sources":["../src/m2m-user-menu.ts"],"names":["M2MUserMenu","m2mAuthTokenApi","clear","window","location","reload","expanded","handleToggleDrawer","listRef","domains","users","handleLogout","LitMenuBaseElement"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAGaA,W,cADZ,+BAAc,eAAd,C;AAAD,QACaA,WADb,6BACoD;AAAA;AAAA;;AAAA;AAAA;;AAAA;;;OAAvCA,W;;;;;;eACI,MAAM;AACnBC,kCAAgBC,KAAhB;;AACAC,UAAAA,MAAM,CAACC,QAAP,CAAgBC,MAAhB;AACD,S;;;;;;aAED,kBAAS;AACP,eAAO,cAAK;AAChB;AACA;AACA;AACA;AACA,wBAAwB,KAAKC,QAAS;AACtC,iBAAiB,KAAKC,kBAAmB;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,cAAI,KAAKC,OAAT,CAAkB;AAC5B;AACA,sBAAsB,CAAC,KAAKF,QAAS;AACrC;AACA;AACA,uBAAuBG,iBAAQC,KAAM;AACrC,qBAAqB,KAAKC,YAAa;AACvC;AACA;AACA;AACA,WA1BI;AA2BD;;;GAlC8BC,uC","sourcesContent":["import { m2mAuthTokenApi } from \"./storage/client\";\nimport { domains } from \"./domains\";\nimport { html } from \"lit\";\nimport { customElement } from \"lit/decorators.js\";\nimport { ref } from \"lit/directives/ref.js\";\nimport { LitMenuBaseElement } from \"./LitMenuBaseElement\";\n\n@customElement(\"m2m-user-menu\")\nexport class M2MUserMenu extends LitMenuBaseElement {\n handleLogout = () => {\n m2mAuthTokenApi.clear();\n window.location.reload();\n };\n\n render() {\n return html`<nav>\n <button\n type=\"button\"\n class=\"navigation-drawer-controll-button navigation-drawer-controll-button--icon\"\n aria-controls=\"m2m-user-menu__navigation-drawer\"\n aria-expanded=${this.expanded}\n @click=${this.handleToggleDrawer}\n >\n <svg viewBox=\"0 0 24 24\" width=\"32px\" height=\"32px\" fill=\"#000000\">\n <path d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path\n d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 3c1.66 0 3 1.34 3 3s-1.34 3-3 3-3-1.34-3-3 1.34-3 3-3zm0 14.2c-2.5 0-4.71-1.28-6-3.22.03-1.99 4-3.08 6-3.08 1.99 0 5.97 1.09 6 3.08-1.29 1.94-3.5 3.22-6 3.22z\"\n />\n </svg>\n </button>\n <ul\n ${ref(this.listRef)}\n id=\"m2m-user-menu__navigation-drawer\"\n aria-hidden=${!this.expanded}\n class=\"navigation-drawer\"\n >\n <li><a href=\"${domains.users}\">アカウント情報</a></li>\n <li @click=${this.handleLogout}>\n <button type=\"button\">ログアウト</button>\n </li>\n </ul>\n </nav>`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n \"m2m-user-menu\": M2MUserMenu;\n }\n}\n"],"file":"m2m-user-menu.js"}
@@ -16,8 +16,8 @@ const context = {};
16
16
  * @default 5000
17
17
  */
18
18
 
19
- const getStorage = (timeout = 5000) => {
20
- return new Promise((resolve, reject) => {
19
+ const getStorage = async (timeout = 5000) => {
20
+ const storage = await new Promise((resolve, reject) => {
21
21
  const rejectTimer = window.setTimeout(function () {
22
22
  reject(new Error("Timeout: M2mStorageClient could not connect. Please call m2mStorageClient.init() before using m2mStorageClient."));
23
23
  }, timeout);
@@ -25,22 +25,21 @@ const getStorage = (timeout = 5000) => {
25
25
 
26
26
  if (storage) {
27
27
  window.clearTimeout(rejectTimer);
28
- storage.onConnect().then(() => {
29
- resolve(storage);
30
- });
28
+ resolve(storage);
31
29
  }
32
30
 
33
- const timer = window.setInterval(async () => {
31
+ const timer = window.setInterval(() => {
34
32
  const storage = context.storage;
35
33
 
36
34
  if (storage) {
37
35
  window.clearTimeout(rejectTimer);
38
- await storage.onConnect();
39
36
  window.clearInterval(timer);
40
37
  resolve(storage);
41
38
  }
42
39
  }, 200);
43
40
  });
41
+ await storage.onConnect();
42
+ return storage;
44
43
  };
45
44
 
46
45
  const M2M_STORAGE_HUB_URL = "https://hub.m2msystems.cloud/";
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/storage/client.ts"],"names":["M2mStorageClient","StorageClient","context","getStorage","timeout","Promise","resolve","reject","rejectTimer","window","setTimeout","Error","storage","clearTimeout","onConnect","then","timer","setInterval","clearInterval","M2M_STORAGE_HUB_URL","M2M_STORAGE_HUB_URL_DEV","initStorageClient","options","env","m2mStorageClient","init","M2M_AUTH_TOKEN_KEY","getAuthTokenCache","localStorage","getItem","getAuthToken","autuToken","get","error","console","warn","setAuthToken","token","setItem","set","clearAuthToken","removeItem","del","m2mAuthTokenApi","getCache","clear"],"mappings":"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","sourcesContent":["import { StorageClient } from \"./lib/client\";\n\nclass M2mStorageClient extends StorageClient {}\n\nexport type { M2mStorageClient };\n\nconst context: {\n storage?: M2mStorageClient;\n} = {};\n\n/**\n * Get the connected storage client.\n * @param timeout\n * @default 5000\n */\nconst getStorage = (timeout = 5000) => {\n return new Promise<M2mStorageClient>((resolve, reject) => {\n const rejectTimer = window.setTimeout(function () {\n reject(\n new Error(\n \"Timeout: M2mStorageClient could not connect. Please call m2mStorageClient.init() before using m2mStorageClient.\"\n )\n );\n }, timeout);\n\n const storage = context.storage;\n if (storage) {\n window.clearTimeout(rejectTimer);\n storage.onConnect().then(() => {\n resolve(storage);\n });\n }\n\n const timer = window.setInterval(async () => {\n const storage = context.storage;\n if (storage) {\n window.clearTimeout(rejectTimer);\n await storage.onConnect();\n window.clearInterval(timer);\n resolve(storage);\n }\n }, 200);\n });\n};\n\nconst M2M_STORAGE_HUB_URL = \"https://hub.m2msystems.cloud/\";\n\nconst M2M_STORAGE_HUB_URL_DEV =\n \"https://m2m-components-storage-hub-dev.netlify.app/\";\n\nconst initStorageClient = (options?: {\n env?: \"development\" | \"production\";\n}) => {\n if (context.storage) {\n throw new Error(\n \"M2mStorageClient already initialized. Do not call m2mStorageClient.init multiple times.\"\n );\n }\n const storage = new M2mStorageClient(\n options?.env === \"production\"\n ? M2M_STORAGE_HUB_URL\n : M2M_STORAGE_HUB_URL_DEV\n );\n context.storage = storage;\n};\n\nexport const m2mStorageClient = {\n init: initStorageClient,\n getStorage: getStorage,\n};\n\nexport const M2M_AUTH_TOKEN_KEY = \"M2M_APP_AUTH_TOKEN\";\n\nconst getAuthTokenCache = () => {\n return window.localStorage.getItem(M2M_AUTH_TOKEN_KEY);\n};\n\nconst getAuthToken = async () => {\n try {\n const storage = await getStorage();\n const autuToken = (await storage.get(M2M_AUTH_TOKEN_KEY)) as string;\n return autuToken || getAuthTokenCache();\n } catch (error) {\n console.warn(error);\n return getAuthTokenCache();\n }\n};\n\nconst setAuthToken = async (token: string) => {\n window.localStorage.setItem(M2M_AUTH_TOKEN_KEY, token);\n try {\n const storage = await getStorage();\n await storage.set(M2M_AUTH_TOKEN_KEY, token);\n } catch (error) {\n console.warn(error);\n }\n};\n\nconst clearAuthToken = async () => {\n window.localStorage.removeItem(M2M_AUTH_TOKEN_KEY);\n try {\n const storage = await getStorage();\n await storage.del(M2M_AUTH_TOKEN_KEY);\n } catch (error) {\n console.warn(error);\n }\n};\n\nexport const m2mAuthTokenApi = {\n get: getAuthToken,\n getCache: getAuthTokenCache,\n set: setAuthToken,\n clear: clearAuthToken,\n};\n"],"file":"client.js"}
1
+ {"version":3,"sources":["../../src/storage/client.ts"],"names":["M2mStorageClient","StorageClient","context","getStorage","timeout","storage","Promise","resolve","reject","rejectTimer","window","setTimeout","Error","clearTimeout","timer","setInterval","clearInterval","onConnect","M2M_STORAGE_HUB_URL","M2M_STORAGE_HUB_URL_DEV","initStorageClient","options","env","m2mStorageClient","init","M2M_AUTH_TOKEN_KEY","getAuthTokenCache","localStorage","getItem","getAuthToken","autuToken","get","error","console","warn","setAuthToken","token","setItem","set","clearAuthToken","removeItem","del","m2mAuthTokenApi","getCache","clear"],"mappings":";;;;;;;AAAA;;AAEA,MAAMA,gBAAN,SAA+BC,qBAA/B,CAA6C;;AAI7C,MAAMC,OAEL,GAAG,EAFJ;AAIA;AACA;AACA;AACA;AACA;;AACA,MAAMC,UAAU,GAAG,OAAOC,OAAO,GAAG,IAAjB,KAA0B;AAC3C,QAAMC,OAAO,GAAG,MAAM,IAAIC,OAAJ,CAA8B,CAACC,OAAD,EAAUC,MAAV,KAAqB;AACvE,UAAMC,WAAW,GAAGC,MAAM,CAACC,UAAP,CAAkB,YAAY;AAChDH,MAAAA,MAAM,CACJ,IAAII,KAAJ,CACE,iHADF,CADI,CAAN;AAKD,KANmB,EAMjBR,OANiB,CAApB;AAQA,UAAMC,OAAO,GAAGH,OAAO,CAACG,OAAxB;;AACA,QAAIA,OAAJ,EAAa;AACXK,MAAAA,MAAM,CAACG,YAAP,CAAoBJ,WAApB;AACAF,MAAAA,OAAO,CAACF,OAAD,CAAP;AACD;;AAED,UAAMS,KAAK,GAAGJ,MAAM,CAACK,WAAP,CAAmB,MAAM;AACrC,YAAMV,OAAO,GAAGH,OAAO,CAACG,OAAxB;;AACA,UAAIA,OAAJ,EAAa;AACXK,QAAAA,MAAM,CAACG,YAAP,CAAoBJ,WAApB;AACAC,QAAAA,MAAM,CAACM,aAAP,CAAqBF,KAArB;AACAP,QAAAA,OAAO,CAACF,OAAD,CAAP;AACD;AACF,KAPa,EAOX,GAPW,CAAd;AAQD,GAvBqB,CAAtB;AAyBA,QAAMA,OAAO,CAACY,SAAR,EAAN;AAEA,SAAOZ,OAAP;AACD,CA7BD;;AA+BA,MAAMa,mBAAmB,GAAG,+BAA5B;AAEA,MAAMC,uBAAuB,GAC3B,qDADF;;AAGA,MAAMC,iBAAiB,GAAIC,OAAD,IAEpB;AACJ,MAAInB,OAAO,CAACG,OAAZ,EAAqB;AACnB,UAAM,IAAIO,KAAJ,CACJ,yFADI,CAAN;AAGD;;AACD,QAAMP,OAAO,GAAG,IAAIL,gBAAJ,CACdqB,OAAO,EAAEC,GAAT,KAAiB,YAAjB,GACIJ,mBADJ,GAEIC,uBAHU,CAAhB;AAKAjB,EAAAA,OAAO,CAACG,OAAR,GAAkBA,OAAlB;AACD,CAdD;;AAgBO,MAAMkB,gBAAgB,GAAG;AAC9BC,EAAAA,IAAI,EAAEJ,iBADwB;AAE9BjB,EAAAA,UAAU,EAAEA;AAFkB,CAAzB;;AAKA,MAAMsB,kBAAkB,GAAG,oBAA3B;;;AAEP,MAAMC,iBAAiB,GAAG,MAAM;AAC9B,SAAOhB,MAAM,CAACiB,YAAP,CAAoBC,OAApB,CAA4BH,kBAA5B,CAAP;AACD,CAFD;;AAIA,MAAMI,YAAY,GAAG,YAAY;AAC/B,MAAI;AACF,UAAMxB,OAAO,GAAG,MAAMF,UAAU,EAAhC;AACA,UAAM2B,SAAS,GAAI,MAAMzB,OAAO,CAAC0B,GAAR,CAAYN,kBAAZ,CAAzB;AACA,WAAOK,SAAS,IAAIJ,iBAAiB,EAArC;AACD,GAJD,CAIE,OAAOM,KAAP,EAAc;AACdC,IAAAA,OAAO,CAACC,IAAR,CAAaF,KAAb;AACA,WAAON,iBAAiB,EAAxB;AACD;AACF,CATD;;AAWA,MAAMS,YAAY,GAAG,MAAOC,KAAP,IAAyB;AAC5C1B,EAAAA,MAAM,CAACiB,YAAP,CAAoBU,OAApB,CAA4BZ,kBAA5B,EAAgDW,KAAhD;;AACA,MAAI;AACF,UAAM/B,OAAO,GAAG,MAAMF,UAAU,EAAhC;AACA,UAAME,OAAO,CAACiC,GAAR,CAAYb,kBAAZ,EAAgCW,KAAhC,CAAN;AACD,GAHD,CAGE,OAAOJ,KAAP,EAAc;AACdC,IAAAA,OAAO,CAACC,IAAR,CAAaF,KAAb;AACD;AACF,CARD;;AAUA,MAAMO,cAAc,GAAG,YAAY;AACjC7B,EAAAA,MAAM,CAACiB,YAAP,CAAoBa,UAApB,CAA+Bf,kBAA/B;;AACA,MAAI;AACF,UAAMpB,OAAO,GAAG,MAAMF,UAAU,EAAhC;AACA,UAAME,OAAO,CAACoC,GAAR,CAAYhB,kBAAZ,CAAN;AACD,GAHD,CAGE,OAAOO,KAAP,EAAc;AACdC,IAAAA,OAAO,CAACC,IAAR,CAAaF,KAAb;AACD;AACF,CARD;;AAUO,MAAMU,eAAe,GAAG;AAC7BX,EAAAA,GAAG,EAAEF,YADwB;AAE7Bc,EAAAA,QAAQ,EAAEjB,iBAFmB;AAG7BY,EAAAA,GAAG,EAAEH,YAHwB;AAI7BS,EAAAA,KAAK,EAAEL;AAJsB,CAAxB","sourcesContent":["import { StorageClient } from \"./lib/client\";\n\nclass M2mStorageClient extends StorageClient {}\n\nexport type { M2mStorageClient };\n\nconst context: {\n storage?: M2mStorageClient;\n} = {};\n\n/**\n * Get the connected storage client.\n * @param timeout\n * @default 5000\n */\nconst getStorage = async (timeout = 5000) => {\n const storage = await new Promise<M2mStorageClient>((resolve, reject) => {\n const rejectTimer = window.setTimeout(function () {\n reject(\n new Error(\n \"Timeout: M2mStorageClient could not connect. Please call m2mStorageClient.init() before using m2mStorageClient.\"\n )\n );\n }, timeout);\n\n const storage = context.storage;\n if (storage) {\n window.clearTimeout(rejectTimer);\n resolve(storage);\n }\n\n const timer = window.setInterval(() => {\n const storage = context.storage;\n if (storage) {\n window.clearTimeout(rejectTimer);\n window.clearInterval(timer);\n resolve(storage);\n }\n }, 200);\n });\n\n await storage.onConnect();\n\n return storage;\n};\n\nconst M2M_STORAGE_HUB_URL = \"https://hub.m2msystems.cloud/\";\n\nconst M2M_STORAGE_HUB_URL_DEV =\n \"https://m2m-components-storage-hub-dev.netlify.app/\";\n\nconst initStorageClient = (options?: {\n env?: \"development\" | \"production\";\n}) => {\n if (context.storage) {\n throw new Error(\n \"M2mStorageClient already initialized. Do not call m2mStorageClient.init multiple times.\"\n );\n }\n const storage = new M2mStorageClient(\n options?.env === \"production\"\n ? M2M_STORAGE_HUB_URL\n : M2M_STORAGE_HUB_URL_DEV\n );\n context.storage = storage;\n};\n\nexport const m2mStorageClient = {\n init: initStorageClient,\n getStorage: getStorage,\n};\n\nexport const M2M_AUTH_TOKEN_KEY = \"M2M_APP_AUTH_TOKEN\";\n\nconst getAuthTokenCache = () => {\n return window.localStorage.getItem(M2M_AUTH_TOKEN_KEY);\n};\n\nconst getAuthToken = async () => {\n try {\n const storage = await getStorage();\n const autuToken = (await storage.get(M2M_AUTH_TOKEN_KEY)) as string;\n return autuToken || getAuthTokenCache();\n } catch (error) {\n console.warn(error);\n return getAuthTokenCache();\n }\n};\n\nconst setAuthToken = async (token: string) => {\n window.localStorage.setItem(M2M_AUTH_TOKEN_KEY, token);\n try {\n const storage = await getStorage();\n await storage.set(M2M_AUTH_TOKEN_KEY, token);\n } catch (error) {\n console.warn(error);\n }\n};\n\nconst clearAuthToken = async () => {\n window.localStorage.removeItem(M2M_AUTH_TOKEN_KEY);\n try {\n const storage = await getStorage();\n await storage.del(M2M_AUTH_TOKEN_KEY);\n } catch (error) {\n console.warn(error);\n }\n};\n\nexport const m2mAuthTokenApi = {\n get: getAuthToken,\n getCache: getAuthTokenCache,\n set: setAuthToken,\n clear: clearAuthToken,\n};\n"],"file":"client.js"}
package/m2m-user-menu.js CHANGED
@@ -67,7 +67,7 @@ export var M2MUserMenu = _decorate([customElement("m2m-user-menu")], function (_
67
67
  kind: "method",
68
68
  key: "render",
69
69
  value: function render() {
70
- return html(_templateObject || (_templateObject = _taggedTemplateLiteral(["<nav>\n <button\n type=\"button\"\n class=\"navigation-drawer-controll-button navigation-drawer-controll-button--icon\"\n aria-controls=\"m2m-user-menu__navigation-drawer\"\n aria-expanded=", "\n @click=", "\n >\n <svg viewBox=\"0 0 24 24\" width=\"32px\" height=\"32px\" fill=\"#000000\">\n <path d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path\n d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 3c1.66 0 3 1.34 3 3s-1.34 3-3 3-3-1.34-3-3 1.34-3 3-3zm0 14.2c-2.5 0-4.71-1.28-6-3.22.03-1.99 4-3.08 6-3.08 1.99 0 5.97 1.09 6 3.08-1.29 1.94-3.5 3.22-6 3.22z\"\n />\n </svg>\n </button>\n <ul\n ", "\n id=\"m2m-user-menu__navigation-drawer\"\n aria-hidden=", "\n class=\"navigation-drawer navigation-drawer__bottom-end\"\n >\n <li><a href=\"", "\">\u30A2\u30AB\u30A6\u30F3\u30C8\u60C5\u5831</a></li>\n <li @click=", ">\n <button type=\"button\">\u30ED\u30B0\u30A2\u30A6\u30C8</button>\n </li>\n </ul>\n </nav>"])), this.expanded, this.handleToggleDrawer, ref(this.listRef), !this.expanded, domains.users, this.handleLogout);
70
+ return html(_templateObject || (_templateObject = _taggedTemplateLiteral(["<nav>\n <button\n type=\"button\"\n class=\"navigation-drawer-controll-button navigation-drawer-controll-button--icon\"\n aria-controls=\"m2m-user-menu__navigation-drawer\"\n aria-expanded=", "\n @click=", "\n >\n <svg viewBox=\"0 0 24 24\" width=\"32px\" height=\"32px\" fill=\"#000000\">\n <path d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path\n d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 3c1.66 0 3 1.34 3 3s-1.34 3-3 3-3-1.34-3-3 1.34-3 3-3zm0 14.2c-2.5 0-4.71-1.28-6-3.22.03-1.99 4-3.08 6-3.08 1.99 0 5.97 1.09 6 3.08-1.29 1.94-3.5 3.22-6 3.22z\"\n />\n </svg>\n </button>\n <ul\n ", "\n id=\"m2m-user-menu__navigation-drawer\"\n aria-hidden=", "\n class=\"navigation-drawer\"\n >\n <li><a href=\"", "\">\u30A2\u30AB\u30A6\u30F3\u30C8\u60C5\u5831</a></li>\n <li @click=", ">\n <button type=\"button\">\u30ED\u30B0\u30A2\u30A6\u30C8</button>\n </li>\n </ul>\n </nav>"])), this.expanded, this.handleToggleDrawer, ref(this.listRef), !this.expanded, domains.users, this.handleLogout);
71
71
  }
72
72
  }]
73
73
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["src/m2m-user-menu.ts"],"names":["m2mAuthTokenApi","domains","html","customElement","ref","LitMenuBaseElement","M2MUserMenu","clear","window","location","reload","expanded","handleToggleDrawer","listRef","users","handleLogout"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,SAASA,eAAT,QAAgC,kBAAhC;AACA,SAASC,OAAT,QAAwB,WAAxB;AACA,SAASC,IAAT,QAAqB,KAArB;AACA,SAASC,aAAT,QAA8B,mBAA9B;AACA,SAASC,GAAT,QAAoB,uBAApB;AACA,SAASC,kBAAT,QAAmC,sBAAnC;AAGA,WAAaC,WAAb,cADCH,aAAa,CAAC,eAAD,CACd;AADA,QACaG,WADb,6BACoD;AAAA;AAAA;;AAAA;AAAA;;AAAA;;AAApD;AAAA,OAAaA,WAAb;AAAA;AAAA;AAAA;;AAAA;AAAA,eACiB,MAAM;AACnBN,UAAAA,eAAe,CAACO,KAAhB;AACAC,UAAAA,MAAM,CAACC,QAAP,CAAgBC,MAAhB;AACD,SAJH;AAAA;;AAAA;AAAA;AAAA;AAAA,aAME,kBAAS;AACP,eAAOR,IAAP,upCAKoB,KAAKS,QALzB,EAMa,KAAKC,kBANlB,EAgBMR,GAAG,CAAC,KAAKS,OAAN,CAhBT,EAkBkB,CAAC,KAAKF,QAlBxB,EAqBmBV,OAAO,CAACa,KArB3B,EAsBiB,KAAKC,YAtBtB;AA2BD;AAlCH;AAAA;AAAA,GAAiCV,kBAAjC","sourcesContent":["import { m2mAuthTokenApi } from \"./storage/client\";\nimport { domains } from \"./domains\";\nimport { html } from \"lit\";\nimport { customElement } from \"lit/decorators.js\";\nimport { ref } from \"lit/directives/ref.js\";\nimport { LitMenuBaseElement } from \"./LitMenuBaseElement\";\n\n@customElement(\"m2m-user-menu\")\nexport class M2MUserMenu extends LitMenuBaseElement {\n handleLogout = () => {\n m2mAuthTokenApi.clear();\n window.location.reload();\n };\n\n render() {\n return html`<nav>\n <button\n type=\"button\"\n class=\"navigation-drawer-controll-button navigation-drawer-controll-button--icon\"\n aria-controls=\"m2m-user-menu__navigation-drawer\"\n aria-expanded=${this.expanded}\n @click=${this.handleToggleDrawer}\n >\n <svg viewBox=\"0 0 24 24\" width=\"32px\" height=\"32px\" fill=\"#000000\">\n <path d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path\n d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 3c1.66 0 3 1.34 3 3s-1.34 3-3 3-3-1.34-3-3 1.34-3 3-3zm0 14.2c-2.5 0-4.71-1.28-6-3.22.03-1.99 4-3.08 6-3.08 1.99 0 5.97 1.09 6 3.08-1.29 1.94-3.5 3.22-6 3.22z\"\n />\n </svg>\n </button>\n <ul\n ${ref(this.listRef)}\n id=\"m2m-user-menu__navigation-drawer\"\n aria-hidden=${!this.expanded}\n class=\"navigation-drawer navigation-drawer__bottom-end\"\n >\n <li><a href=\"${domains.users}\">アカウント情報</a></li>\n <li @click=${this.handleLogout}>\n <button type=\"button\">ログアウト</button>\n </li>\n </ul>\n </nav>`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n \"m2m-user-menu\": M2MUserMenu;\n }\n}\n"],"file":"m2m-user-menu.js"}
1
+ {"version":3,"sources":["src/m2m-user-menu.ts"],"names":["m2mAuthTokenApi","domains","html","customElement","ref","LitMenuBaseElement","M2MUserMenu","clear","window","location","reload","expanded","handleToggleDrawer","listRef","users","handleLogout"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,SAASA,eAAT,QAAgC,kBAAhC;AACA,SAASC,OAAT,QAAwB,WAAxB;AACA,SAASC,IAAT,QAAqB,KAArB;AACA,SAASC,aAAT,QAA8B,mBAA9B;AACA,SAASC,GAAT,QAAoB,uBAApB;AACA,SAASC,kBAAT,QAAmC,sBAAnC;AAGA,WAAaC,WAAb,cADCH,aAAa,CAAC,eAAD,CACd;AADA,QACaG,WADb,6BACoD;AAAA;AAAA;;AAAA;AAAA;;AAAA;;AAApD;AAAA,OAAaA,WAAb;AAAA;AAAA;AAAA;;AAAA;AAAA,eACiB,MAAM;AACnBN,UAAAA,eAAe,CAACO,KAAhB;AACAC,UAAAA,MAAM,CAACC,QAAP,CAAgBC,MAAhB;AACD,SAJH;AAAA;;AAAA;AAAA;AAAA;AAAA,aAME,kBAAS;AACP,eAAOR,IAAP,ynCAKoB,KAAKS,QALzB,EAMa,KAAKC,kBANlB,EAgBMR,GAAG,CAAC,KAAKS,OAAN,CAhBT,EAkBkB,CAAC,KAAKF,QAlBxB,EAqBmBV,OAAO,CAACa,KArB3B,EAsBiB,KAAKC,YAtBtB;AA2BD;AAlCH;AAAA;AAAA,GAAiCV,kBAAjC","sourcesContent":["import { m2mAuthTokenApi } from \"./storage/client\";\nimport { domains } from \"./domains\";\nimport { html } from \"lit\";\nimport { customElement } from \"lit/decorators.js\";\nimport { ref } from \"lit/directives/ref.js\";\nimport { LitMenuBaseElement } from \"./LitMenuBaseElement\";\n\n@customElement(\"m2m-user-menu\")\nexport class M2MUserMenu extends LitMenuBaseElement {\n handleLogout = () => {\n m2mAuthTokenApi.clear();\n window.location.reload();\n };\n\n render() {\n return html`<nav>\n <button\n type=\"button\"\n class=\"navigation-drawer-controll-button navigation-drawer-controll-button--icon\"\n aria-controls=\"m2m-user-menu__navigation-drawer\"\n aria-expanded=${this.expanded}\n @click=${this.handleToggleDrawer}\n >\n <svg viewBox=\"0 0 24 24\" width=\"32px\" height=\"32px\" fill=\"#000000\">\n <path d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path\n d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 3c1.66 0 3 1.34 3 3s-1.34 3-3 3-3-1.34-3-3 1.34-3 3-3zm0 14.2c-2.5 0-4.71-1.28-6-3.22.03-1.99 4-3.08 6-3.08 1.99 0 5.97 1.09 6 3.08-1.29 1.94-3.5 3.22-6 3.22z\"\n />\n </svg>\n </button>\n <ul\n ${ref(this.listRef)}\n id=\"m2m-user-menu__navigation-drawer\"\n aria-hidden=${!this.expanded}\n class=\"navigation-drawer\"\n >\n <li><a href=\"${domains.users}\">アカウント情報</a></li>\n <li @click=${this.handleLogout}>\n <button type=\"button\">ログアウト</button>\n </li>\n </ul>\n </nav>`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n \"m2m-user-menu\": M2MUserMenu;\n }\n}\n"],"file":"m2m-user-menu.js"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "m2m-components",
3
- "version": "0.4.1",
3
+ "version": "1.0.0",
4
4
  "main": "cjs/index.js",
5
5
  "module": "index.js",
6
6
  "typings": "index.d.ts",
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/storage/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7C,cAAM,gBAAiB,SAAQ,aAAa;CAAG;AAE/C,YAAY,EAAE,gBAAgB,EAAE,CAAC;AA8DjC,eAAO,MAAM,gBAAgB;;;;;CAG5B,CAAC;AAEF,eAAO,MAAM,kBAAkB,uBAAuB,CAAC;AAqCvD,eAAO,MAAM,eAAe;;;iBApBO,MAAM;;CAyBxC,CAAC"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/storage/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7C,cAAM,gBAAiB,SAAQ,aAAa;CAAG;AAE/C,YAAY,EAAE,gBAAgB,EAAE,CAAC;AA+DjC,eAAO,MAAM,gBAAgB;;;;;CAG5B,CAAC;AAEF,eAAO,MAAM,kBAAkB,uBAAuB,CAAC;AAqCvD,eAAO,MAAM,eAAe;;;iBApBO,MAAM;;CAyBxC,CAAC"}
package/storage/client.js CHANGED
@@ -13,33 +13,38 @@ var context = {};
13
13
  * @default 5000
14
14
  */
15
15
 
16
- var getStorage = function getStorage() {
17
- var timeout = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 5000;
18
- return new Promise((resolve, reject) => {
19
- var rejectTimer = window.setTimeout(function () {
20
- reject(new Error("Timeout: M2mStorageClient could not connect. Please call m2mStorageClient.init() before using m2mStorageClient."));
21
- }, timeout);
22
- var storage = context.storage;
23
-
24
- if (storage) {
25
- window.clearTimeout(rejectTimer);
26
- storage.onConnect().then(() => {
27
- resolve(storage);
28
- });
29
- }
30
-
31
- var timer = window.setInterval( /*#__PURE__*/_asyncToGenerator(function* () {
16
+ var getStorage = /*#__PURE__*/function () {
17
+ var _ref = _asyncToGenerator(function* () {
18
+ var timeout = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 5000;
19
+ var storage = yield new Promise((resolve, reject) => {
20
+ var rejectTimer = window.setTimeout(function () {
21
+ reject(new Error("Timeout: M2mStorageClient could not connect. Please call m2mStorageClient.init() before using m2mStorageClient."));
22
+ }, timeout);
32
23
  var storage = context.storage;
33
24
 
34
25
  if (storage) {
35
26
  window.clearTimeout(rejectTimer);
36
- yield storage.onConnect();
37
- window.clearInterval(timer);
38
27
  resolve(storage);
39
28
  }
40
- }), 200);
29
+
30
+ var timer = window.setInterval(() => {
31
+ var storage = context.storage;
32
+
33
+ if (storage) {
34
+ window.clearTimeout(rejectTimer);
35
+ window.clearInterval(timer);
36
+ resolve(storage);
37
+ }
38
+ }, 200);
39
+ });
40
+ yield storage.onConnect();
41
+ return storage;
41
42
  });
42
- };
43
+
44
+ return function getStorage() {
45
+ return _ref.apply(this, arguments);
46
+ };
47
+ }();
43
48
 
44
49
  var M2M_STORAGE_HUB_URL = "https://hub.m2msystems.cloud/";
45
50
  var M2M_STORAGE_HUB_URL_DEV = "https://m2m-components-storage-hub-dev.netlify.app/";
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/storage/client.ts"],"names":["StorageClient","M2mStorageClient","context","getStorage","timeout","Promise","resolve","reject","rejectTimer","window","setTimeout","Error","storage","clearTimeout","onConnect","then","timer","setInterval","clearInterval","M2M_STORAGE_HUB_URL","M2M_STORAGE_HUB_URL_DEV","initStorageClient","options","env","m2mStorageClient","init","M2M_AUTH_TOKEN_KEY","getAuthTokenCache","localStorage","getItem","getAuthToken","autuToken","get","error","console","warn","setAuthToken","token","setItem","set","clearAuthToken","removeItem","del","m2mAuthTokenApi","getCache","clear"],"mappings":"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","sourcesContent":["import { StorageClient } from \"./lib/client\";\n\nclass M2mStorageClient extends StorageClient {}\n\nexport type { M2mStorageClient };\n\nconst context: {\n storage?: M2mStorageClient;\n} = {};\n\n/**\n * Get the connected storage client.\n * @param timeout\n * @default 5000\n */\nconst getStorage = (timeout = 5000) => {\n return new Promise<M2mStorageClient>((resolve, reject) => {\n const rejectTimer = window.setTimeout(function () {\n reject(\n new Error(\n \"Timeout: M2mStorageClient could not connect. Please call m2mStorageClient.init() before using m2mStorageClient.\"\n )\n );\n }, timeout);\n\n const storage = context.storage;\n if (storage) {\n window.clearTimeout(rejectTimer);\n storage.onConnect().then(() => {\n resolve(storage);\n });\n }\n\n const timer = window.setInterval(async () => {\n const storage = context.storage;\n if (storage) {\n window.clearTimeout(rejectTimer);\n await storage.onConnect();\n window.clearInterval(timer);\n resolve(storage);\n }\n }, 200);\n });\n};\n\nconst M2M_STORAGE_HUB_URL = \"https://hub.m2msystems.cloud/\";\n\nconst M2M_STORAGE_HUB_URL_DEV =\n \"https://m2m-components-storage-hub-dev.netlify.app/\";\n\nconst initStorageClient = (options?: {\n env?: \"development\" | \"production\";\n}) => {\n if (context.storage) {\n throw new Error(\n \"M2mStorageClient already initialized. Do not call m2mStorageClient.init multiple times.\"\n );\n }\n const storage = new M2mStorageClient(\n options?.env === \"production\"\n ? M2M_STORAGE_HUB_URL\n : M2M_STORAGE_HUB_URL_DEV\n );\n context.storage = storage;\n};\n\nexport const m2mStorageClient = {\n init: initStorageClient,\n getStorage: getStorage,\n};\n\nexport const M2M_AUTH_TOKEN_KEY = \"M2M_APP_AUTH_TOKEN\";\n\nconst getAuthTokenCache = () => {\n return window.localStorage.getItem(M2M_AUTH_TOKEN_KEY);\n};\n\nconst getAuthToken = async () => {\n try {\n const storage = await getStorage();\n const autuToken = (await storage.get(M2M_AUTH_TOKEN_KEY)) as string;\n return autuToken || getAuthTokenCache();\n } catch (error) {\n console.warn(error);\n return getAuthTokenCache();\n }\n};\n\nconst setAuthToken = async (token: string) => {\n window.localStorage.setItem(M2M_AUTH_TOKEN_KEY, token);\n try {\n const storage = await getStorage();\n await storage.set(M2M_AUTH_TOKEN_KEY, token);\n } catch (error) {\n console.warn(error);\n }\n};\n\nconst clearAuthToken = async () => {\n window.localStorage.removeItem(M2M_AUTH_TOKEN_KEY);\n try {\n const storage = await getStorage();\n await storage.del(M2M_AUTH_TOKEN_KEY);\n } catch (error) {\n console.warn(error);\n }\n};\n\nexport const m2mAuthTokenApi = {\n get: getAuthToken,\n getCache: getAuthTokenCache,\n set: setAuthToken,\n clear: clearAuthToken,\n};\n"],"file":"client.js"}
1
+ {"version":3,"sources":["../src/storage/client.ts"],"names":["StorageClient","M2mStorageClient","context","getStorage","timeout","storage","Promise","resolve","reject","rejectTimer","window","setTimeout","Error","clearTimeout","timer","setInterval","clearInterval","onConnect","M2M_STORAGE_HUB_URL","M2M_STORAGE_HUB_URL_DEV","initStorageClient","options","env","m2mStorageClient","init","M2M_AUTH_TOKEN_KEY","getAuthTokenCache","localStorage","getItem","getAuthToken","autuToken","get","error","console","warn","setAuthToken","token","setItem","set","clearAuthToken","removeItem","del","m2mAuthTokenApi","getCache","clear"],"mappings":"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","sourcesContent":["import { StorageClient } from \"./lib/client\";\n\nclass M2mStorageClient extends StorageClient {}\n\nexport type { M2mStorageClient };\n\nconst context: {\n storage?: M2mStorageClient;\n} = {};\n\n/**\n * Get the connected storage client.\n * @param timeout\n * @default 5000\n */\nconst getStorage = async (timeout = 5000) => {\n const storage = await new Promise<M2mStorageClient>((resolve, reject) => {\n const rejectTimer = window.setTimeout(function () {\n reject(\n new Error(\n \"Timeout: M2mStorageClient could not connect. Please call m2mStorageClient.init() before using m2mStorageClient.\"\n )\n );\n }, timeout);\n\n const storage = context.storage;\n if (storage) {\n window.clearTimeout(rejectTimer);\n resolve(storage);\n }\n\n const timer = window.setInterval(() => {\n const storage = context.storage;\n if (storage) {\n window.clearTimeout(rejectTimer);\n window.clearInterval(timer);\n resolve(storage);\n }\n }, 200);\n });\n\n await storage.onConnect();\n\n return storage;\n};\n\nconst M2M_STORAGE_HUB_URL = \"https://hub.m2msystems.cloud/\";\n\nconst M2M_STORAGE_HUB_URL_DEV =\n \"https://m2m-components-storage-hub-dev.netlify.app/\";\n\nconst initStorageClient = (options?: {\n env?: \"development\" | \"production\";\n}) => {\n if (context.storage) {\n throw new Error(\n \"M2mStorageClient already initialized. Do not call m2mStorageClient.init multiple times.\"\n );\n }\n const storage = new M2mStorageClient(\n options?.env === \"production\"\n ? M2M_STORAGE_HUB_URL\n : M2M_STORAGE_HUB_URL_DEV\n );\n context.storage = storage;\n};\n\nexport const m2mStorageClient = {\n init: initStorageClient,\n getStorage: getStorage,\n};\n\nexport const M2M_AUTH_TOKEN_KEY = \"M2M_APP_AUTH_TOKEN\";\n\nconst getAuthTokenCache = () => {\n return window.localStorage.getItem(M2M_AUTH_TOKEN_KEY);\n};\n\nconst getAuthToken = async () => {\n try {\n const storage = await getStorage();\n const autuToken = (await storage.get(M2M_AUTH_TOKEN_KEY)) as string;\n return autuToken || getAuthTokenCache();\n } catch (error) {\n console.warn(error);\n return getAuthTokenCache();\n }\n};\n\nconst setAuthToken = async (token: string) => {\n window.localStorage.setItem(M2M_AUTH_TOKEN_KEY, token);\n try {\n const storage = await getStorage();\n await storage.set(M2M_AUTH_TOKEN_KEY, token);\n } catch (error) {\n console.warn(error);\n }\n};\n\nconst clearAuthToken = async () => {\n window.localStorage.removeItem(M2M_AUTH_TOKEN_KEY);\n try {\n const storage = await getStorage();\n await storage.del(M2M_AUTH_TOKEN_KEY);\n } catch (error) {\n console.warn(error);\n }\n};\n\nexport const m2mAuthTokenApi = {\n get: getAuthToken,\n getCache: getAuthTokenCache,\n set: setAuthToken,\n clear: clearAuthToken,\n};\n"],"file":"client.js"}