m2m-components 5.1.4-alpha-1725852045986-c9ff28f.0 → 5.1.4-alpha-0-9ac30bf.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.
Files changed (111) hide show
  1. package/MenuBaseElement.js.map +1 -1
  2. package/MenuBaseElement.mjs +1 -1
  3. package/{chunk-RIKI6TTQ.mjs → chunk-2F7MVYJV.mjs} +5 -5
  4. package/chunk-2F7MVYJV.mjs.map +1 -0
  5. package/chunk-32NVR4HG.mjs +18 -0
  6. package/chunk-32NVR4HG.mjs.map +1 -0
  7. package/chunk-34OP4R54.mjs +114 -0
  8. package/chunk-34OP4R54.mjs.map +1 -0
  9. package/{chunk-YXPSTKYY.mjs → chunk-3LXMUAGW.mjs} +4 -4
  10. package/chunk-3LXMUAGW.mjs.map +1 -0
  11. package/chunk-3X5MOATG.mjs +9 -0
  12. package/chunk-3X5MOATG.mjs.map +1 -0
  13. package/{chunk-B6FEFIYC.mjs → chunk-4WYT3ILE.mjs} +2 -2
  14. package/chunk-4WYT3ILE.mjs.map +1 -0
  15. package/chunk-5DZIFMOT.mjs +96 -0
  16. package/chunk-5DZIFMOT.mjs.map +1 -0
  17. package/chunk-5MCHUEWC.mjs +40 -0
  18. package/chunk-5MCHUEWC.mjs.map +1 -0
  19. package/{chunk-HI2D4CLX.mjs → chunk-6YUMRFSL.mjs} +1 -1
  20. package/chunk-6YUMRFSL.mjs.map +1 -0
  21. package/chunk-7UFH6ALM.mjs +24 -0
  22. package/chunk-7UFH6ALM.mjs.map +1 -0
  23. package/chunk-AYYVMRUA.mjs +94 -0
  24. package/chunk-AYYVMRUA.mjs.map +1 -0
  25. package/chunk-BUSDHSUG.mjs +61 -0
  26. package/chunk-BUSDHSUG.mjs.map +1 -0
  27. package/{chunk-RDG67OF7.mjs → chunk-DJMCUABY.mjs} +4 -4
  28. package/chunk-F4UMH2JS.mjs +74 -0
  29. package/chunk-F4UMH2JS.mjs.map +1 -0
  30. package/chunk-FDRD4YS4.mjs +34 -0
  31. package/chunk-FDRD4YS4.mjs.map +1 -0
  32. package/{chunk-CR2KP7D3.mjs → chunk-FK5456TR.mjs} +2 -2
  33. package/{chunk-YZIPEODC.mjs → chunk-H6D6RG6X.mjs} +1 -1
  34. package/chunk-H6D6RG6X.mjs.map +1 -0
  35. package/chunk-IYTHV2XJ.mjs +22 -0
  36. package/chunk-IYTHV2XJ.mjs.map +1 -0
  37. package/chunk-JTHAKXEH.mjs +8992 -0
  38. package/chunk-JTHAKXEH.mjs.map +1 -0
  39. package/chunk-KE76CQSA.mjs +41 -0
  40. package/chunk-KE76CQSA.mjs.map +1 -0
  41. package/chunk-KEFPOQJ5.mjs +83 -0
  42. package/chunk-KEFPOQJ5.mjs.map +1 -0
  43. package/chunk-LUTUMV2M.mjs +166 -0
  44. package/chunk-LUTUMV2M.mjs.map +1 -0
  45. package/chunk-MHR3UXOP.mjs +154 -0
  46. package/{chunk-HI2D4CLX.mjs.map → chunk-MHR3UXOP.mjs.map} +1 -1
  47. package/chunk-OB2SVLHW.mjs +289 -0
  48. package/chunk-OB2SVLHW.mjs.map +1 -0
  49. package/chunk-P4FPJRVQ.mjs +17 -0
  50. package/{chunk-S7FCKJZP.mjs → chunk-RUMO4IC5.mjs} +1 -1
  51. package/chunk-RUMO4IC5.mjs.map +1 -0
  52. package/{chunk-LAH6LOT7.mjs → chunk-UIR5V5YH.mjs} +5 -5
  53. package/chunk-UXYQOQLC.mjs +28 -0
  54. package/chunk-UXYQOQLC.mjs.map +1 -0
  55. package/chunk-V74QQNBA.mjs +21 -0
  56. package/chunk-V74QQNBA.mjs.map +1 -0
  57. package/chunk-WLLFVGUS.mjs +441 -0
  58. package/chunk-WLLFVGUS.mjs.map +1 -0
  59. package/chunk-YMWGGIJ6.mjs +19 -0
  60. package/chunk-YMWGGIJ6.mjs.map +1 -0
  61. package/chunk-YSF5KXHA.mjs +54 -0
  62. package/chunk-YSF5KXHA.mjs.map +1 -0
  63. package/chunk-ZJKAXJ7Z.mjs +78 -0
  64. package/chunk-ZJKAXJ7Z.mjs.map +1 -0
  65. package/feedback/index.mjs +2 -2
  66. package/global.d.d.mts +5 -1
  67. package/global.d.d.ts +5 -1
  68. package/global.d.js.map +1 -1
  69. package/index.js +2 -3
  70. package/index.js.map +1 -1
  71. package/index.mjs +10 -10
  72. package/initM2mComponents.js +4 -5
  73. package/initM2mComponents.js.map +1 -1
  74. package/initM2mComponents.mjs +2 -2
  75. package/m2m-apps-menu.js.map +1 -1
  76. package/m2m-apps-menu.mjs +2 -2
  77. package/m2m-notifications.v1-OgnhtmrU.d.mts +64 -0
  78. package/m2m-notifications.v1-OgnhtmrU.d.ts +64 -0
  79. package/m2m-releases-link.js.map +1 -1
  80. package/m2m-releases-link.mjs +1 -1
  81. package/m2m-user-menu.js +2 -3
  82. package/m2m-user-menu.js.map +1 -1
  83. package/m2m-user-menu.mjs +3 -3
  84. package/m2m-users.v1-kKGcXd92.d.mts +271 -0
  85. package/m2m-users.v1-kKGcXd92.d.ts +271 -0
  86. package/matsuri-forms.v1-lw-XWLjX.d.mts +203 -0
  87. package/matsuri-forms.v1-lw-XWLjX.d.ts +203 -0
  88. package/notification/index.mjs +6 -6
  89. package/package.json +57 -57
  90. package/releases/t.js.map +1 -1
  91. package/releases/t.mjs +1 -1
  92. package/storage/client.js +4 -5
  93. package/storage/client.js.map +1 -1
  94. package/storage/client.mjs +1 -1
  95. package/storage/hub.js.map +1 -1
  96. package/storage/hub.mjs +1 -1
  97. package/storage/refreshAuth.js +2 -3
  98. package/storage/refreshAuth.js.map +1 -1
  99. package/storage/refreshAuth.mjs +3 -3
  100. package/storage/useM2mAuth.js +2 -3
  101. package/storage/useM2mAuth.js.map +1 -1
  102. package/storage/useM2mAuth.mjs +6 -6
  103. package/storage/useM2mAuth.mjs.map +1 -1
  104. package/chunk-B6FEFIYC.mjs.map +0 -1
  105. package/chunk-RIKI6TTQ.mjs.map +0 -1
  106. package/chunk-S7FCKJZP.mjs.map +0 -1
  107. package/chunk-YXPSTKYY.mjs.map +0 -1
  108. /package/{chunk-RDG67OF7.mjs.map → chunk-DJMCUABY.mjs.map} +0 -0
  109. /package/{chunk-CR2KP7D3.mjs.map → chunk-FK5456TR.mjs.map} +0 -0
  110. /package/{chunk-YZIPEODC.mjs.map → chunk-P4FPJRVQ.mjs.map} +0 -0
  111. /package/{chunk-LAH6LOT7.mjs.map → chunk-UIR5V5YH.mjs.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/MenuBaseElement.ts"],"sourcesContent":["import { LitElement, css } from \"lit\";\nimport { Ref, createRef } from \"lit/directives/ref.js\";\nimport { property } from \"lit/decorators.js\";\n\nexport interface MenuAdditionalItem {\n label: string;\n href: string;\n}\n\nexport interface MenuBaseElementProps {\n expanded: boolean;\n additinalItems: MenuAdditionalItem[];\n}\n\nexport class MenuBaseElement extends LitElement {\n static styles = css`\n nav {\n position: relative;\n display: flex;\n }\n .navigation-drawer-controll-button {\n display: flex;\n align-items: center;\n justify-content: center;\n\n height: 42px;\n padding: 0;\n cursor: pointer;\n background-color: transparent;\n border: none;\n transition: background-color 0.2s;\n appearance: none;\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 z-index: 1100;\n box-sizing: border-box;\n min-width: 200px;\n padding: 0px;\n margin: 0px;\n overflow: hidden;\n color: rgba(0, 0, 0, 0.87);\n white-space: nowrap;\n list-style: none;\n background-color: #fff;\n border-radius: 5px;\n box-shadow:\n 0px 1px 3px 0px rgb(0 0 0 / 20%),\n 0px 1px 1px 0px rgb(0 0 0 / 14%),\n 0px 2px 1px -1px rgb(0 0 0 / 12%);\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 box-sizing: border-box;\n display: block;\n width: 100%;\n padding: 0;\n padding: 0.6em 1em;\n font: inherit;\n color: inherit;\n text-align: left;\n text-decoration: none;\n cursor: pointer;\n cursor: pointer;\n background-color: transparent;\n border: none;\n transition: 0.2s;\n appearance: none;\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 .navigation-drawer li ul {\n padding: 0;\n list-style: none;\n }\n .navigation-drawer li:has(> ul) li > a {\n padding-left: 2em;\n }\n\n .navigation-drawer li:has(> ul) > span {\n display: block;\n padding: 0.6em 1em;\n border-bottom: 1px solid #eeeeee;\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 type: Object,\n attribute: \"additional-items\",\n })\n additinalItems: MenuBaseElementProps[\"additinalItems\"] = [];\n\n @property()\n expanded?: boolean = false;\n\n handleToggleDrawer = (event: Event) => {\n event.preventDefault();\n event.stopPropagation();\n\n // eslint-disable-next-line @typescript-eslint/strict-boolean-expressions\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: Ref = createRef();\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,iBAAgC;AAChC,iBAA+B;AAC/B,wBAAyB;AAYlB,IAAM,kBAAN,cAA8B,sBAAW;AAAA,EAAzC;AAAA;AAsGL,8BAAqB,CAAC,UAAmC;AACvD,UACE,CAAC,KAAK,QAAQ,SACd,KAAK,QAAQ,MAAM,SAAS,MAAM,aAAa,EAAE,CAAC,CAAS,GAC3D;AACA;AAAA,MACF;AACA,WAAK,WAAW;AAAA,IAClB;AAMA,0BAAyD,CAAC;AAG1D,oBAAqB;AAErB,8BAAqB,CAAC,UAAiB;AACrC,YAAM,eAAe;AACrB,YAAM,gBAAgB;AAGtB,WAAK,WAAW,CAAC,KAAK;AACtB,UAAI,KAAK,UAAU;AACjB,eAAO,iBAAiB,SAAS,KAAK,oBAAoB,KAAK;AAAA,MACjE;AAAA,IACF;AAaA,uBAAe,sBAAU;AAAA;AAAA,EAXf,UAAU;AAClB,QAAI,KAAK,aAAa,OAAO;AAC3B,aAAO,oBAAoB,SAAS,KAAK,oBAAoB,KAAK;AAAA,IACpE;AAAA,EACF;AAAA,EAEA,uBAA6B;AAC3B,UAAM,qBAAqB;AAC3B,WAAO,oBAAoB,SAAS,KAAK,oBAAoB,KAAK;AAAA,EACpE;AAGF;AAhJa,gBACJ,SAAS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAmHhB;AAAA,MAJC,4BAAS;AAAA,IACR,MAAM;AAAA,IACN,WAAW;AAAA,EACb,CAAC;AAAA,GAnHU,gBAoHX;AAGA;AAAA,MADC,4BAAS;AAAA,GAtHC,gBAuHX;","names":[]}
1
+ {"version":3,"sources":["../src/MenuBaseElement.ts"],"sourcesContent":["import { LitElement, css } from \"lit\";\r\nimport { Ref, createRef } from \"lit/directives/ref.js\";\r\nimport { property } from \"lit/decorators.js\";\r\n\r\nexport interface MenuAdditionalItem {\r\n label: string;\r\n href: string;\r\n}\r\n\r\nexport interface MenuBaseElementProps {\r\n expanded: boolean;\r\n additinalItems: MenuAdditionalItem[];\r\n}\r\n\r\nexport class MenuBaseElement extends LitElement {\r\n static styles = css`\r\n nav {\r\n position: relative;\r\n display: flex;\r\n }\r\n .navigation-drawer-controll-button {\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n\r\n height: 42px;\r\n padding: 0;\r\n cursor: pointer;\r\n background-color: transparent;\r\n border: none;\r\n transition: background-color 0.2s;\r\n appearance: none;\r\n }\r\n .navigation-drawer-controll-button.navigation-drawer-controll-button--icon {\r\n width: 42px;\r\n }\r\n .navigation-drawer-controll-button:hover {\r\n background-color: rgba(0, 0, 0, 0.05);\r\n }\r\n .navigation-drawer-controll-button:active {\r\n background-color: rgba(0, 0, 0, 0.075);\r\n }\r\n\r\n .navigation-drawer {\r\n position: absolute;\r\n top: 100%;\r\n right: 0px;\r\n z-index: 1100;\r\n box-sizing: border-box;\r\n min-width: 200px;\r\n padding: 0px;\r\n margin: 0px;\r\n overflow: hidden;\r\n color: rgba(0, 0, 0, 0.87);\r\n white-space: nowrap;\r\n list-style: none;\r\n background-color: #fff;\r\n border-radius: 5px;\r\n box-shadow:\r\n 0px 1px 3px 0px rgb(0 0 0 / 20%),\r\n 0px 1px 1px 0px rgb(0 0 0 / 14%),\r\n 0px 2px 1px -1px rgb(0 0 0 / 12%);\r\n }\r\n .navigation-drawer-controll-button[aria-expanded=\"false\"]\r\n ~ .navigation-drawer {\r\n display: none;\r\n }\r\n\r\n .navigation-drawer li {\r\n border-bottom: 1px solid #eeeeee;\r\n }\r\n .navigation-drawer li:last-of-type {\r\n border-bottom: none;\r\n }\r\n .navigation-drawer li > a,\r\n .navigation-drawer li > button {\r\n box-sizing: border-box;\r\n display: block;\r\n width: 100%;\r\n padding: 0;\r\n padding: 0.6em 1em;\r\n font: inherit;\r\n color: inherit;\r\n text-align: left;\r\n text-decoration: none;\r\n cursor: pointer;\r\n cursor: pointer;\r\n background-color: transparent;\r\n border: none;\r\n transition: 0.2s;\r\n appearance: none;\r\n }\r\n .navigation-drawer li > a:hover,\r\n .navigation-drawer li > button:hover {\r\n background-color: #ededed;\r\n }\r\n .navigation-drawer li > a:active,\r\n .navigation-drawer li > button:active {\r\n background-color: #dadada;\r\n }\r\n\r\n .navigation-drawer li ul {\r\n padding: 0;\r\n list-style: none;\r\n }\r\n .navigation-drawer li:has(> ul) li > a {\r\n padding-left: 2em;\r\n }\r\n\r\n .navigation-drawer li:has(> ul) > span {\r\n display: block;\r\n padding: 0.6em 1em;\r\n border-bottom: 1px solid #eeeeee;\r\n }\r\n `;\r\n\r\n handleClickOutside = (event: MouseEvent | TouchEvent) => {\r\n if (\r\n !this.listRef.value ||\r\n this.listRef.value.contains(event.composedPath()[0] as Node)\r\n ) {\r\n return;\r\n }\r\n this.expanded = false;\r\n };\r\n\r\n @property({\r\n type: Object,\r\n attribute: \"additional-items\",\r\n })\r\n additinalItems: MenuBaseElementProps[\"additinalItems\"] = [];\r\n\r\n @property()\r\n expanded?: boolean = false;\r\n\r\n handleToggleDrawer = (event: Event) => {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n\r\n // eslint-disable-next-line @typescript-eslint/strict-boolean-expressions\r\n this.expanded = !this.expanded;\r\n if (this.expanded) {\r\n window.addEventListener(\"click\", this.handleClickOutside, false);\r\n }\r\n };\r\n\r\n protected updated() {\r\n if (this.expanded === false) {\r\n window.removeEventListener(\"click\", this.handleClickOutside, false);\r\n }\r\n }\r\n\r\n disconnectedCallback(): void {\r\n super.disconnectedCallback();\r\n window.removeEventListener(\"click\", this.handleClickOutside, false);\r\n }\r\n\r\n listRef: Ref = createRef();\r\n}\r\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,iBAAgC;AAChC,iBAA+B;AAC/B,wBAAyB;AAYlB,IAAM,kBAAN,cAA8B,sBAAW;AAAA,EAAzC;AAAA;AAsGL,8BAAqB,CAAC,UAAmC;AACvD,UACE,CAAC,KAAK,QAAQ,SACd,KAAK,QAAQ,MAAM,SAAS,MAAM,aAAa,EAAE,CAAC,CAAS,GAC3D;AACA;AAAA,MACF;AACA,WAAK,WAAW;AAAA,IAClB;AAMA,0BAAyD,CAAC;AAG1D,oBAAqB;AAErB,8BAAqB,CAAC,UAAiB;AACrC,YAAM,eAAe;AACrB,YAAM,gBAAgB;AAGtB,WAAK,WAAW,CAAC,KAAK;AACtB,UAAI,KAAK,UAAU;AACjB,eAAO,iBAAiB,SAAS,KAAK,oBAAoB,KAAK;AAAA,MACjE;AAAA,IACF;AAaA,uBAAe,sBAAU;AAAA;AAAA,EAXf,UAAU;AAClB,QAAI,KAAK,aAAa,OAAO;AAC3B,aAAO,oBAAoB,SAAS,KAAK,oBAAoB,KAAK;AAAA,IACpE;AAAA,EACF;AAAA,EAEA,uBAA6B;AAC3B,UAAM,qBAAqB;AAC3B,WAAO,oBAAoB,SAAS,KAAK,oBAAoB,KAAK;AAAA,EACpE;AAGF;AAhJa,gBACJ,SAAS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAmHhB;AAAA,MAJC,4BAAS;AAAA,IACR,MAAM;AAAA,IACN,WAAW;AAAA,EACb,CAAC;AAAA,GAnHU,gBAoHX;AAGA;AAAA,MADC,4BAAS;AAAA,GAtHC,gBAuHX;","names":[]}
@@ -1,7 +1,7 @@
1
1
  'use client'
2
2
  import {
3
3
  MenuBaseElement
4
- } from "./chunk-HI2D4CLX.mjs";
4
+ } from "./chunk-6YUMRFSL.mjs";
5
5
  import "./chunk-QH5I6YL2.mjs";
6
6
  export {
7
7
  MenuBaseElement
@@ -1,13 +1,13 @@
1
1
  'use client'
2
2
  import {
3
3
  m2mAuthTokenApi
4
- } from "./chunk-B6FEFIYC.mjs";
5
- import {
6
- MenuBaseElement
7
- } from "./chunk-HI2D4CLX.mjs";
4
+ } from "./chunk-5DZIFMOT.mjs";
8
5
  import {
9
6
  getDomains
10
7
  } from "./chunk-B7STDXYN.mjs";
8
+ import {
9
+ MenuBaseElement
10
+ } from "./chunk-6YUMRFSL.mjs";
11
11
  import {
12
12
  __decorateClass
13
13
  } from "./chunk-QH5I6YL2.mjs";
@@ -72,4 +72,4 @@ M2MUserMenu = __decorateClass([
72
72
  export {
73
73
  M2MUserMenu
74
74
  };
75
- //# sourceMappingURL=chunk-RIKI6TTQ.mjs.map
75
+ //# sourceMappingURL=chunk-2F7MVYJV.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/m2m-user-menu.ts"],"sourcesContent":["import { MenuBaseElement, MenuBaseElementProps } from \"./MenuBaseElement\";\r\nimport { customElement } from \"lit/decorators.js\";\r\nimport { getDomains } from \"./domains\";\r\nimport { html } from \"lit\";\r\nimport { m2mAuthTokenApi } from \"./storage/client\";\r\nimport { ref } from \"lit/directives/ref.js\";\r\n\r\nexport type M2MUserMenuProps = MenuBaseElementProps;\r\n\r\n@customElement(\"m2m-user-menu\")\r\nexport class M2MUserMenu extends MenuBaseElement {\r\n handleLogout = () => {\r\n void m2mAuthTokenApi.clear();\r\n window.location.reload();\r\n };\r\n\r\n render() {\r\n const domains = getDomains();\r\n const additionalItems = this.additinalItems?.map((item) => {\r\n return html`\r\n <li>\r\n <a href=\"${item.href}\">${item.label}</a>\r\n </li>\r\n `;\r\n });\r\n const isHidden = this.expanded === false || this.expanded === undefined;\r\n return html`<nav>\r\n <button\r\n type=\"button\"\r\n class=\"navigation-drawer-controll-button navigation-drawer-controll-button--icon\"\r\n aria-controls=\"m2m-user-menu__navigation-drawer\"\r\n aria-expanded=${this.expanded}\r\n @click=${this.handleToggleDrawer}\r\n >\r\n <svg viewBox=\"0 0 24 24\" width=\"38px\" height=\"38px\" fill=\"#000000\">\r\n <path d=\"M0 0h24v24H0z\" fill=\"none\" />\r\n <path\r\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\"\r\n />\r\n </svg>\r\n </button>\r\n <ul\r\n ${ref(this.listRef)}\r\n id=\"m2m-user-menu__navigation-drawer\"\r\n aria-hidden=${isHidden}\r\n class=\"navigation-drawer\"\r\n >\r\n <li><a href=\"${domains.users}\">アカウント情報</a></li>\r\n <li @click=${this.handleLogout}>\r\n <button type=\"button\">ログアウト</button>\r\n </li>\r\n ${additionalItems}\r\n </ul>\r\n </nav>`;\r\n }\r\n}\r\n\r\ndeclare global {\r\n interface HTMLElementTagNameMap {\r\n \"m2m-user-menu\": M2MUserMenu;\r\n }\r\n}\r\n"],"mappings":";;;;;;;;;;;;;;;AACA,SAAS,qBAAqB;AAE9B,SAAS,YAAY;AAErB,SAAS,WAAW;AAKb,IAAM,cAAN,cAA0B,gBAAgB;AAAA,EAA1C;AAAA;AACL,wBAAe,MAAM;AACnB,WAAK,gBAAgB,MAAM;AAC3B,aAAO,SAAS,OAAO;AAAA,IACzB;AAAA;AAAA,EAEA,SAAS;AAhBX;AAiBI,UAAM,UAAU,WAAW;AAC3B,UAAM,mBAAkB,UAAK,mBAAL,mBAAqB,IAAI,CAAC,SAAS;AACzD,aAAO;AAAA;AAAA,qBAEQ,KAAK,IAAI,KAAK,KAAK,KAAK;AAAA;AAAA;AAAA,IAGzC;AACA,UAAM,WAAW,KAAK,aAAa,SAAS,KAAK,aAAa;AAC9D,WAAO;AAAA;AAAA;AAAA;AAAA;AAAA,wBAKa,KAAK,QAAQ;AAAA,iBACpB,KAAK,kBAAkB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,UAU9B,IAAI,KAAK,OAAO,CAAC;AAAA;AAAA,sBAEL,QAAQ;AAAA;AAAA;AAAA,uBAGP,QAAQ,KAAK;AAAA,qBACf,KAAK,YAAY;AAAA;AAAA;AAAA,UAG5B,eAAe;AAAA;AAAA;AAAA,EAGvB;AACF;AA7Ca,cAAN;AAAA,EADN,cAAc,eAAe;AAAA,GACjB;","names":[]}
@@ -0,0 +1,18 @@
1
+ 'use client'
2
+ import {
3
+ login
4
+ } from "./chunk-WLLFVGUS.mjs";
5
+
6
+ // src/storage/api/login.ts
7
+ import { fetcher } from "matsuri-hooks";
8
+ var requestLogin = async (input) => {
9
+ return await fetcher(login(), {
10
+ method: "POST",
11
+ body: JSON.stringify(input)
12
+ });
13
+ };
14
+
15
+ export {
16
+ requestLogin
17
+ };
18
+ //# sourceMappingURL=chunk-32NVR4HG.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/storage/api/login.ts"],"sourcesContent":["import { fetcher } from \"matsuri-hooks\";\r\nimport { login as m2mUsers_v1_login } from \"../../endpoints/m2m-users.v1\";\r\n\r\nexport interface LoginInput {\r\n email: string;\r\n password: string;\r\n}\r\n// @see https://github.com/matsuri-tech/m2m-users/blob/master/domain/model/common/accessToken.go#L7\r\nexport interface LoginResponse {\r\n accessToken: string;\r\n expiresAt: number;\r\n refreshToken: {\r\n refreshToken: string;\r\n refreshTokenExpiresAt: number;\r\n };\r\n}\r\nexport const requestLogin = async (input: LoginInput) => {\r\n return await fetcher<LoginResponse>(m2mUsers_v1_login(), {\r\n method: \"POST\",\r\n body: JSON.stringify(input),\r\n });\r\n};\r\n"],"mappings":";;;;;;AAAA,SAAS,eAAe;AAgBjB,IAAM,eAAe,OAAO,UAAsB;AACvD,SAAO,MAAM,QAAuB,MAAkB,GAAG;AAAA,IACvD,QAAQ;AAAA,IACR,MAAM,KAAK,UAAU,KAAK;AAAA,EAC5B,CAAC;AACH;","names":[]}
@@ -0,0 +1,114 @@
1
+ 'use client'
2
+ import {
3
+ __export
4
+ } from "./chunk-BUSDHSUG.mjs";
5
+
6
+ // src/endpoints/m2m-notifications.v1.ts
7
+ var m2m_notifications_v1_exports = {};
8
+ __export(m2m_notifications_v1_exports, {
9
+ findMySubscriptions: () => findMySubscriptions,
10
+ findNotificationsByServiceId: () => findNotificationsByServiceId,
11
+ healthCheck: () => healthCheck,
12
+ m2mNotifications_v1: () => m2mNotifications_v1,
13
+ registerNotification: () => registerNotification,
14
+ root: () => root,
15
+ saveSubscription: () => saveSubscription,
16
+ updateNotificationStatus: () => updateNotificationStatus
17
+ });
18
+ var root = () => {
19
+ let __root = "";
20
+ if (globalThis.M2M_COMPONENTS_ENV === "local") {
21
+ __root = "";
22
+ }
23
+ if (globalThis.M2M_COMPONENTS_ENV === "localDev") {
24
+ __root = "";
25
+ }
26
+ if (globalThis.M2M_COMPONENTS_ENV === "development") {
27
+ __root = "https://api-notifications.dev.m2msystems.cloud";
28
+ }
29
+ if (globalThis.M2M_COMPONENTS_ENV === "production") {
30
+ __root = "https://api-notifications.m2msystems.cloud";
31
+ }
32
+ return __root;
33
+ };
34
+ var healthCheck = () => {
35
+ const __root = root();
36
+ const __queries = Object.entries({}).filter(([_, value]) => {
37
+ return value !== void 0;
38
+ }).map(([key, value]) => {
39
+ return `${key}=${value}`;
40
+ }).join("&");
41
+ const __path = `${__root}/${`health_check`}`;
42
+ return __queries ? `${__path}?${__queries}` : __path;
43
+ };
44
+ var registerNotification = () => {
45
+ const __root = root();
46
+ const __queries = Object.entries({}).filter(([_, value]) => {
47
+ return value !== void 0;
48
+ }).map(([key, value]) => {
49
+ return `${key}=${value}`;
50
+ }).join("&");
51
+ const __path = `${__root}/${`notifications`}`;
52
+ return __queries ? `${__path}?${__queries}` : __path;
53
+ };
54
+ var findNotificationsByServiceId = ({ id }) => {
55
+ const __root = root();
56
+ const __queries = Object.entries({}).filter(([_, value]) => {
57
+ return value !== void 0;
58
+ }).map(([key, value]) => {
59
+ return `${key}=${value}`;
60
+ }).join("&");
61
+ const __path = `${__root}/${`notifications/by_service_id/${id}`}`;
62
+ return __queries ? `${__path}?${__queries}` : __path;
63
+ };
64
+ var updateNotificationStatus = ({ id }) => {
65
+ const __root = root();
66
+ const __queries = Object.entries({}).filter(([_, value]) => {
67
+ return value !== void 0;
68
+ }).map(([key, value]) => {
69
+ return `${key}=${value}`;
70
+ }).join("&");
71
+ const __path = `${__root}/${`notifications/${id}`}`;
72
+ return __queries ? `${__path}?${__queries}` : __path;
73
+ };
74
+ var saveSubscription = () => {
75
+ const __root = root();
76
+ const __queries = Object.entries({}).filter(([_, value]) => {
77
+ return value !== void 0;
78
+ }).map(([key, value]) => {
79
+ return `${key}=${value}`;
80
+ }).join("&");
81
+ const __path = `${__root}/${`subscriptions`}`;
82
+ return __queries ? `${__path}?${__queries}` : __path;
83
+ };
84
+ var findMySubscriptions = () => {
85
+ const __root = root();
86
+ const __queries = Object.entries({}).filter(([_, value]) => {
87
+ return value !== void 0;
88
+ }).map(([key, value]) => {
89
+ return `${key}=${value}`;
90
+ }).join("&");
91
+ const __path = `${__root}/${`subscriptions`}`;
92
+ return __queries ? `${__path}?${__queries}` : __path;
93
+ };
94
+ var m2mNotifications_v1 = {
95
+ healthCheck,
96
+ registerNotification,
97
+ findNotificationsByServiceId,
98
+ updateNotificationStatus,
99
+ saveSubscription,
100
+ findMySubscriptions
101
+ };
102
+
103
+ export {
104
+ root,
105
+ healthCheck,
106
+ registerNotification,
107
+ findNotificationsByServiceId,
108
+ updateNotificationStatus,
109
+ saveSubscription,
110
+ findMySubscriptions,
111
+ m2mNotifications_v1,
112
+ m2m_notifications_v1_exports
113
+ };
114
+ //# sourceMappingURL=chunk-34OP4R54.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/endpoints/m2m-notifications.v1.ts"],"sourcesContent":["/* eslint-disable */\n/**\n * A function that returns the URL part common to the endpoints.\n */\nexport const root = () => {\n let __root = \"\";\n\n if (globalThis.M2M_COMPONENTS_ENV === \"local\") {\n __root = \"\";\n }\n\n if (globalThis.M2M_COMPONENTS_ENV === \"localDev\") {\n __root = \"\";\n }\n\n if (globalThis.M2M_COMPONENTS_ENV === \"development\") {\n __root = \"https://api-notifications.dev.m2msystems.cloud\";\n }\n\n if (globalThis.M2M_COMPONENTS_ENV === \"production\") {\n __root = \"https://api-notifications.m2msystems.cloud\";\n }\n\n return __root;\n};\n/**\n * health check\n *\n */\nexport const healthCheck = () => {\n const __root = root();\n const __queries = Object.entries({})\n .filter(([_, value]) => {\n return value !== undefined;\n })\n .map(([key, value]) => {\n return `${key}=${value}`;\n })\n .join(\"&\");\n const __path = `${__root}/${`health_check`}`;\n return __queries ? `${__path}?${__queries}` : __path;\n};\n\n/**\n * 通知を登録する\n *\n */\nexport const registerNotification = () => {\n const __root = root();\n const __queries = Object.entries({})\n .filter(([_, value]) => {\n return value !== undefined;\n })\n .map(([key, value]) => {\n return `${key}=${value}`;\n })\n .join(\"&\");\n const __path = `${__root}/${`notifications`}`;\n return __queries ? `${__path}?${__queries}` : __path;\n};\n\n/**\n * 自分宛の通知をserviceIdを使って取得する\n *\n */\nexport const findNotificationsByServiceId = ({ id }: { id: string }) => {\n const __root = root();\n const __queries = Object.entries({})\n .filter(([_, value]) => {\n return value !== undefined;\n })\n .map(([key, value]) => {\n return `${key}=${value}`;\n })\n .join(\"&\");\n const __path = `${__root}/${`notifications/by_service_id/${id}`}`;\n return __queries ? `${__path}?${__queries}` : __path;\n};\n\n/**\n * 通知のステータスを更新する\n *\n */\nexport const updateNotificationStatus = ({ id }: { id: string }) => {\n const __root = root();\n const __queries = Object.entries({})\n .filter(([_, value]) => {\n return value !== undefined;\n })\n .map(([key, value]) => {\n return `${key}=${value}`;\n })\n .join(\"&\");\n const __path = `${__root}/${`notifications/${id}`}`;\n return __queries ? `${__path}?${__queries}` : __path;\n};\n\n/**\n * 通知の購読を更新する\n *\n */\nexport const saveSubscription = () => {\n const __root = root();\n const __queries = Object.entries({})\n .filter(([_, value]) => {\n return value !== undefined;\n })\n .map(([key, value]) => {\n return `${key}=${value}`;\n })\n .join(\"&\");\n const __path = `${__root}/${`subscriptions`}`;\n return __queries ? `${__path}?${__queries}` : __path;\n};\n\n/**\n * 自分の購読している通知を取得する\n *\n */\nexport const findMySubscriptions = () => {\n const __root = root();\n const __queries = Object.entries({})\n .filter(([_, value]) => {\n return value !== undefined;\n })\n .map(([key, value]) => {\n return `${key}=${value}`;\n })\n .join(\"&\");\n const __path = `${__root}/${`subscriptions`}`;\n return __queries ? `${__path}?${__queries}` : __path;\n};\nexport const m2mNotifications_v1 = {\n healthCheck,\n registerNotification,\n findNotificationsByServiceId,\n updateNotificationStatus,\n saveSubscription,\n findMySubscriptions,\n};\n"],"mappings":";;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAIO,IAAM,OAAO,MAAM;AACxB,MAAI,SAAS;AAEb,MAAI,WAAW,uBAAuB,SAAS;AAC7C,aAAS;AAAA,EACX;AAEA,MAAI,WAAW,uBAAuB,YAAY;AAChD,aAAS;AAAA,EACX;AAEA,MAAI,WAAW,uBAAuB,eAAe;AACnD,aAAS;AAAA,EACX;AAEA,MAAI,WAAW,uBAAuB,cAAc;AAClD,aAAS;AAAA,EACX;AAEA,SAAO;AACT;AAKO,IAAM,cAAc,MAAM;AAC/B,QAAM,SAAS,KAAK;AACpB,QAAM,YAAY,OAAO,QAAQ,CAAC,CAAC,EAChC,OAAO,CAAC,CAAC,GAAG,KAAK,MAAM;AACtB,WAAO,UAAU;AAAA,EACnB,CAAC,EACA,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM;AACrB,WAAO,GAAG,GAAG,IAAI,KAAK;AAAA,EACxB,CAAC,EACA,KAAK,GAAG;AACX,QAAM,SAAS,GAAG,MAAM,IAAI,cAAc;AAC1C,SAAO,YAAY,GAAG,MAAM,IAAI,SAAS,KAAK;AAChD;AAMO,IAAM,uBAAuB,MAAM;AACxC,QAAM,SAAS,KAAK;AACpB,QAAM,YAAY,OAAO,QAAQ,CAAC,CAAC,EAChC,OAAO,CAAC,CAAC,GAAG,KAAK,MAAM;AACtB,WAAO,UAAU;AAAA,EACnB,CAAC,EACA,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM;AACrB,WAAO,GAAG,GAAG,IAAI,KAAK;AAAA,EACxB,CAAC,EACA,KAAK,GAAG;AACX,QAAM,SAAS,GAAG,MAAM,IAAI,eAAe;AAC3C,SAAO,YAAY,GAAG,MAAM,IAAI,SAAS,KAAK;AAChD;AAMO,IAAM,+BAA+B,CAAC,EAAE,GAAG,MAAsB;AACtE,QAAM,SAAS,KAAK;AACpB,QAAM,YAAY,OAAO,QAAQ,CAAC,CAAC,EAChC,OAAO,CAAC,CAAC,GAAG,KAAK,MAAM;AACtB,WAAO,UAAU;AAAA,EACnB,CAAC,EACA,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM;AACrB,WAAO,GAAG,GAAG,IAAI,KAAK;AAAA,EACxB,CAAC,EACA,KAAK,GAAG;AACX,QAAM,SAAS,GAAG,MAAM,IAAI,+BAA+B,EAAE,EAAE;AAC/D,SAAO,YAAY,GAAG,MAAM,IAAI,SAAS,KAAK;AAChD;AAMO,IAAM,2BAA2B,CAAC,EAAE,GAAG,MAAsB;AAClE,QAAM,SAAS,KAAK;AACpB,QAAM,YAAY,OAAO,QAAQ,CAAC,CAAC,EAChC,OAAO,CAAC,CAAC,GAAG,KAAK,MAAM;AACtB,WAAO,UAAU;AAAA,EACnB,CAAC,EACA,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM;AACrB,WAAO,GAAG,GAAG,IAAI,KAAK;AAAA,EACxB,CAAC,EACA,KAAK,GAAG;AACX,QAAM,SAAS,GAAG,MAAM,IAAI,iBAAiB,EAAE,EAAE;AACjD,SAAO,YAAY,GAAG,MAAM,IAAI,SAAS,KAAK;AAChD;AAMO,IAAM,mBAAmB,MAAM;AACpC,QAAM,SAAS,KAAK;AACpB,QAAM,YAAY,OAAO,QAAQ,CAAC,CAAC,EAChC,OAAO,CAAC,CAAC,GAAG,KAAK,MAAM;AACtB,WAAO,UAAU;AAAA,EACnB,CAAC,EACA,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM;AACrB,WAAO,GAAG,GAAG,IAAI,KAAK;AAAA,EACxB,CAAC,EACA,KAAK,GAAG;AACX,QAAM,SAAS,GAAG,MAAM,IAAI,eAAe;AAC3C,SAAO,YAAY,GAAG,MAAM,IAAI,SAAS,KAAK;AAChD;AAMO,IAAM,sBAAsB,MAAM;AACvC,QAAM,SAAS,KAAK;AACpB,QAAM,YAAY,OAAO,QAAQ,CAAC,CAAC,EAChC,OAAO,CAAC,CAAC,GAAG,KAAK,MAAM;AACtB,WAAO,UAAU;AAAA,EACnB,CAAC,EACA,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM;AACrB,WAAO,GAAG,GAAG,IAAI,KAAK;AAAA,EACxB,CAAC,EACA,KAAK,GAAG;AACX,QAAM,SAAS,GAAG,MAAM,IAAI,eAAe;AAC3C,SAAO,YAAY,GAAG,MAAM,IAAI,SAAS,KAAK;AAChD;AACO,IAAM,sBAAsB;AAAA,EACjC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;","names":[]}
@@ -1,10 +1,10 @@
1
1
  'use client'
2
- import {
3
- MenuBaseElement
4
- } from "./chunk-HI2D4CLX.mjs";
5
2
  import {
6
3
  getDomains
7
4
  } from "./chunk-B7STDXYN.mjs";
5
+ import {
6
+ MenuBaseElement
7
+ } from "./chunk-6YUMRFSL.mjs";
8
8
  import {
9
9
  __decorateClass
10
10
  } from "./chunk-QH5I6YL2.mjs";
@@ -76,4 +76,4 @@ M2MAppsMenu = __decorateClass([
76
76
  export {
77
77
  M2MAppsMenu
78
78
  };
79
- //# sourceMappingURL=chunk-YXPSTKYY.mjs.map
79
+ //# sourceMappingURL=chunk-3LXMUAGW.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/m2m-apps-menu.ts"],"sourcesContent":["import { MenuBaseElement, MenuBaseElementProps } from \"./MenuBaseElement\";\r\nimport { customElement } from \"lit/decorators.js\";\r\nimport { getDomains } from \"./domains\";\r\nimport { html } from \"lit\";\r\nimport { ref } from \"lit/directives/ref.js\";\r\n\r\nexport type M2MAppsMenuProps = MenuBaseElementProps;\r\n\r\n@customElement(\"m2m-apps-menu\")\r\nexport class M2MAppsMenu extends MenuBaseElement {\r\n render() {\r\n const domains = getDomains();\r\n const additionalItems = this.additinalItems?.map((item) => {\r\n return html`\r\n <li>\r\n <a href=\"${item.href}\">${item.label}</a>\r\n </li>\r\n `;\r\n });\r\n const isHidden = this.expanded === false || this.expanded === undefined;\r\n return html`<nav>\r\n <button\r\n type=\"button\"\r\n class=\"navigation-drawer-controll-button navigation-drawer-controll-button--icon\"\r\n aria-controls=\"m2m-apps-menu__navigation-drawer\"\r\n aria-expanded=${this.expanded}\r\n @click=${this.handleToggleDrawer}\r\n >\r\n <svg\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n width=\"38px\"\r\n height=\"38px\"\r\n viewBox=\"0 0 24 24\"\r\n >\r\n <path\r\n d=\"M4 8h4V4H4v4zm6 12h4v-4h-4v4zm-6 0h4v-4H4v4zm0-6h4v-4H4v4zm6 0h4v-4h-4v4zm6-10v4h4V4h-4zm-6 4h4V4h-4v4zm6 6h4v-4h-4v4zm0 6h4v-4h-4v4z\"\r\n />\r\n </svg>\r\n </button>\r\n <ul\r\n ${ref(this.listRef)}\r\n id=\"m2m-apps-menu__navigation-drawer\"\r\n aria-hidden=${isHidden}\r\n class=\"navigation-drawer\"\r\n >\r\n <li>\r\n <span>m2m Series</span>\r\n <ul>\r\n <li><a href=\"${domains.core}\">Core 施設管理</a></li>\r\n <li><a href=\"${domains.checkin}\">Checkin ゲストチェックイン</a></li>\r\n <li><a href=\"${domains.systems}\">Systems Airbnb連携</a></li>\r\n <li><a href=\"${domains.cleaning}\">Cleaning 清掃管理</a></li>\r\n <li><a href=\"${domains.inspection}\">Inspection 内見チェック</a></li>\r\n <li><a href=\"${domains.users}\">Users アカウント管理</a></li>\r\n </ul>\r\n </li>\r\n <li>\r\n <a href=\"${domains.sumyca}\">Sumyca マンスリープラットフォーム</a>\r\n </li>\r\n ${additionalItems}\r\n </ul>\r\n </nav>`;\r\n }\r\n}\r\n\r\ndeclare global {\r\n interface HTMLElementTagNameMap {\r\n \"m2m-apps-menu\": M2MAppsMenu;\r\n }\r\n}\r\n"],"mappings":";;;;;;;;;;;;AACA,SAAS,qBAAqB;AAE9B,SAAS,YAAY;AACrB,SAAS,WAAW;AAKb,IAAM,cAAN,cAA0B,gBAAgB;AAAA,EAC/C,SAAS;AAVX;AAWI,UAAM,UAAU,WAAW;AAC3B,UAAM,mBAAkB,UAAK,mBAAL,mBAAqB,IAAI,CAAC,SAAS;AACzD,aAAO;AAAA;AAAA,qBAEQ,KAAK,IAAI,KAAK,KAAK,KAAK;AAAA;AAAA;AAAA,IAGzC;AACA,UAAM,WAAW,KAAK,aAAa,SAAS,KAAK,aAAa;AAC9D,WAAO;AAAA;AAAA;AAAA;AAAA;AAAA,wBAKa,KAAK,QAAQ;AAAA,iBACpB,KAAK,kBAAkB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,UAc9B,IAAI,KAAK,OAAO,CAAC;AAAA;AAAA,sBAEL,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,2BAMH,QAAQ,IAAI;AAAA,2BACZ,QAAQ,OAAO;AAAA,2BACf,QAAQ,OAAO;AAAA,2BACf,QAAQ,QAAQ;AAAA,2BAChB,QAAQ,UAAU;AAAA,2BAClB,QAAQ,KAAK;AAAA;AAAA;AAAA;AAAA,qBAInB,QAAQ,MAAM;AAAA;AAAA,UAEzB,eAAe;AAAA;AAAA;AAAA,EAGvB;AACF;AAtDa,cAAN;AAAA,EADN,cAAc,eAAe;AAAA,GACjB;","names":[]}
@@ -0,0 +1,9 @@
1
+ 'use client'
2
+
3
+ // src/releases/t.ts
4
+ var t = "01HNH05WSZV46175VERV6VVBVD";
5
+
6
+ export {
7
+ t
8
+ };
9
+ //# sourceMappingURL=chunk-3X5MOATG.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/releases/t.ts"],"sourcesContent":["export const t = \"01HNH05WSZV46175VERV6VVBVD\";\n"],"mappings":";;;AAAO,IAAM,IAAI;","names":[]}
@@ -1,7 +1,7 @@
1
1
  'use client'
2
2
  import {
3
3
  StorageClient
4
- } from "./chunk-PB3E5UQP.mjs";
4
+ } from "./chunk-LUTUMV2M.mjs";
5
5
 
6
6
  // src/storage/client.ts
7
7
  var M2mStorageClient = class extends StorageClient {
@@ -94,4 +94,4 @@ export {
94
94
  M2M_AUTH_TOKEN_KEY,
95
95
  m2mAuthTokenApi
96
96
  };
97
- //# sourceMappingURL=chunk-B6FEFIYC.mjs.map
97
+ //# sourceMappingURL=chunk-4WYT3ILE.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/storage/client.ts"],"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 = globalThis.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 globalThis.clearTimeout(rejectTimer);\n resolve(storage);\n }\n\n const timer = globalThis.setInterval(() => {\n const storage = context.storage;\n if (storage) {\n globalThis.clearTimeout(rejectTimer);\n globalThis.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 globalThis.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 globalThis.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 globalThis.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"],"mappings":";;;;;;AAEA,IAAM,mBAAN,cAA+B,cAAc;AAAC;AAI9C,IAAM,UAEF,CAAC;AAOL,IAAM,aAAa,OAAO,UAAU,QAAS;AAC3C,QAAM,UAAU,MAAM,IAAI,QAA0B,CAAC,SAAS,WAAW;AACvE,UAAM,cAAc,WAAW,WAAW,WAAY;AACpD;AAAA,QACE,IAAI;AAAA,UACF;AAAA,QACF;AAAA,MACF;AAAA,IACF,GAAG,OAAO;AAEV,UAAMA,WAAU,QAAQ;AACxB,QAAIA,UAAS;AACX,iBAAW,aAAa,WAAW;AACnC,cAAQA,QAAO;AAAA,IACjB;AAEA,UAAM,QAAQ,WAAW,YAAY,MAAM;AACzC,YAAMA,WAAU,QAAQ;AACxB,UAAIA,UAAS;AACX,mBAAW,aAAa,WAAW;AACnC,mBAAW,cAAc,KAAK;AAC9B,gBAAQA,QAAO;AAAA,MACjB;AAAA,IACF,GAAG,GAAG;AAAA,EACR,CAAC;AAED,QAAM,QAAQ,UAAU;AAExB,SAAO;AACT;AAEA,IAAM,sBAAsB;AAE5B,IAAM,0BACJ;AAEF,IAAM,oBAAoB,CAAC,YAErB;AACJ,MAAI,QAAQ,SAAS;AACnB,UAAM,IAAI;AAAA,MACR;AAAA,IACF;AAAA,EACF;AACA,QAAM,UAAU,IAAI;AAAA,KAClB,mCAAS,SAAQ,eACb,sBACA;AAAA,EACN;AACA,UAAQ,UAAU;AACpB;AAEO,IAAM,mBAAmB;AAAA,EAC9B,MAAM;AAAA,EACN;AACF;AAEO,IAAM,qBAAqB;AAElC,IAAM,oBAAoB,MAAM;AAC9B,SAAO,WAAW,aAAa,QAAQ,kBAAkB;AAC3D;AAEA,IAAM,eAAe,YAAY;AAC/B,MAAI;AACF,UAAM,UAAU,MAAM,WAAW;AACjC,UAAM,YAAa,MAAM,QAAQ,IAAI,kBAAkB;AACvD,WAAO,aAAa,kBAAkB;AAAA,EACxC,SAAS,OAAO;AACd,YAAQ,KAAK,KAAK;AAClB,WAAO,kBAAkB;AAAA,EAC3B;AACF;AAEA,IAAM,eAAe,OAAO,UAAkB;AAC5C,aAAW,aAAa,QAAQ,oBAAoB,KAAK;AACzD,MAAI;AACF,UAAM,UAAU,MAAM,WAAW;AACjC,UAAM,QAAQ,IAAI,oBAAoB,KAAK;AAAA,EAC7C,SAAS,OAAO;AACd,YAAQ,KAAK,KAAK;AAAA,EACpB;AACF;AAEA,IAAM,iBAAiB,YAAY;AACjC,aAAW,aAAa,WAAW,kBAAkB;AACrD,MAAI;AACF,UAAM,UAAU,MAAM,WAAW;AACjC,UAAM,QAAQ,IAAI,kBAAkB;AAAA,EACtC,SAAS,OAAO;AACd,YAAQ,KAAK,KAAK;AAAA,EACpB;AACF;AAEO,IAAM,kBAAkB;AAAA,EAC7B,KAAK;AAAA,EACL,UAAU;AAAA,EACV,KAAK;AAAA,EACL,OAAO;AACT;","names":["storage"]}
@@ -0,0 +1,96 @@
1
+ 'use client'
2
+ import {
3
+ StorageClient
4
+ } from "./chunk-PB3E5UQP.mjs";
5
+
6
+ // src/storage/client.ts
7
+ var M2mStorageClient = class extends StorageClient {
8
+ };
9
+ var getStorage = async (timeout = 5e3) => {
10
+ const storage = await new Promise((resolve, reject) => {
11
+ const rejectTimer = globalThis.setTimeout(function() {
12
+ reject(
13
+ new Error(
14
+ "Timeout: M2mStorageClient could not connect. Please call m2mStorageClient.init() before using m2mStorageClient."
15
+ )
16
+ );
17
+ }, timeout);
18
+ const storage2 = globalThis.M2M_STORAGE;
19
+ if (storage2) {
20
+ globalThis.clearTimeout(rejectTimer);
21
+ resolve(storage2);
22
+ }
23
+ const timer = globalThis.setInterval(() => {
24
+ const storage3 = globalThis.M2M_STORAGE;
25
+ if (storage3) {
26
+ globalThis.clearTimeout(rejectTimer);
27
+ globalThis.clearInterval(timer);
28
+ resolve(storage3);
29
+ }
30
+ }, 200);
31
+ });
32
+ await storage.onConnect();
33
+ return storage;
34
+ };
35
+ var M2M_STORAGE_HUB_URL = "https://hub.m2msystems.cloud/";
36
+ var M2M_STORAGE_HUB_URL_DEV = "https://m2m-components-storage-hub-dev.netlify.app/";
37
+ var initStorageClient = (options) => {
38
+ if (globalThis.M2M_STORAGE) {
39
+ throw new Error(
40
+ "M2mStorageClient already initialized. Do not call m2mStorageClient.init multiple times."
41
+ );
42
+ }
43
+ const storage = new M2mStorageClient(
44
+ (options == null ? void 0 : options.env) === "production" ? M2M_STORAGE_HUB_URL : M2M_STORAGE_HUB_URL_DEV
45
+ );
46
+ globalThis.M2M_STORAGE = storage;
47
+ };
48
+ var m2mStorageClient = {
49
+ init: initStorageClient,
50
+ getStorage
51
+ };
52
+ var M2M_AUTH_TOKEN_KEY = "M2M_APP_AUTH_TOKEN";
53
+ var getAuthTokenCache = () => {
54
+ return globalThis.localStorage.getItem(M2M_AUTH_TOKEN_KEY);
55
+ };
56
+ var getAuthToken = async () => {
57
+ try {
58
+ const storage = await getStorage();
59
+ const autuToken = await storage.get(M2M_AUTH_TOKEN_KEY);
60
+ return autuToken || getAuthTokenCache();
61
+ } catch (error) {
62
+ console.warn(error);
63
+ return getAuthTokenCache();
64
+ }
65
+ };
66
+ var setAuthToken = async (token) => {
67
+ globalThis.localStorage.setItem(M2M_AUTH_TOKEN_KEY, token);
68
+ try {
69
+ const storage = await getStorage();
70
+ await storage.set(M2M_AUTH_TOKEN_KEY, token);
71
+ } catch (error) {
72
+ console.warn(error);
73
+ }
74
+ };
75
+ var clearAuthToken = async () => {
76
+ globalThis.localStorage.removeItem(M2M_AUTH_TOKEN_KEY);
77
+ try {
78
+ const storage = await getStorage();
79
+ await storage.del(M2M_AUTH_TOKEN_KEY);
80
+ } catch (error) {
81
+ console.warn(error);
82
+ }
83
+ };
84
+ var m2mAuthTokenApi = {
85
+ get: getAuthToken,
86
+ getCache: getAuthTokenCache,
87
+ set: setAuthToken,
88
+ clear: clearAuthToken
89
+ };
90
+
91
+ export {
92
+ m2mStorageClient,
93
+ M2M_AUTH_TOKEN_KEY,
94
+ m2mAuthTokenApi
95
+ };
96
+ //# sourceMappingURL=chunk-5DZIFMOT.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/storage/client.ts"],"sourcesContent":["import { StorageClient } from \"./lib/client\";\n\nclass M2mStorageClient extends StorageClient {}\n\nexport type { M2mStorageClient };\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 = globalThis.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 = globalThis.M2M_STORAGE;\n if (storage) {\n globalThis.clearTimeout(rejectTimer);\n resolve(storage);\n }\n\n const timer = globalThis.setInterval(() => {\n const storage = globalThis.M2M_STORAGE;\n if (storage) {\n globalThis.clearTimeout(rejectTimer);\n globalThis.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 (globalThis.M2M_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 globalThis.M2M_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 globalThis.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 globalThis.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 globalThis.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"],"mappings":";;;;;;AAEA,IAAM,mBAAN,cAA+B,cAAc;AAAC;AAS9C,IAAM,aAAa,OAAO,UAAU,QAAS;AAC3C,QAAM,UAAU,MAAM,IAAI,QAA0B,CAAC,SAAS,WAAW;AACvE,UAAM,cAAc,WAAW,WAAW,WAAY;AACpD;AAAA,QACE,IAAI;AAAA,UACF;AAAA,QACF;AAAA,MACF;AAAA,IACF,GAAG,OAAO;AAEV,UAAMA,WAAU,WAAW;AAC3B,QAAIA,UAAS;AACX,iBAAW,aAAa,WAAW;AACnC,cAAQA,QAAO;AAAA,IACjB;AAEA,UAAM,QAAQ,WAAW,YAAY,MAAM;AACzC,YAAMA,WAAU,WAAW;AAC3B,UAAIA,UAAS;AACX,mBAAW,aAAa,WAAW;AACnC,mBAAW,cAAc,KAAK;AAC9B,gBAAQA,QAAO;AAAA,MACjB;AAAA,IACF,GAAG,GAAG;AAAA,EACR,CAAC;AAED,QAAM,QAAQ,UAAU;AAExB,SAAO;AACT;AAEA,IAAM,sBAAsB;AAE5B,IAAM,0BACJ;AAEF,IAAM,oBAAoB,CAAC,YAErB;AACJ,MAAI,WAAW,aAAa;AAC1B,UAAM,IAAI;AAAA,MACR;AAAA,IACF;AAAA,EACF;AACA,QAAM,UAAU,IAAI;AAAA,KAClB,mCAAS,SAAQ,eACb,sBACA;AAAA,EACN;AACA,aAAW,cAAc;AAC3B;AAEO,IAAM,mBAAmB;AAAA,EAC9B,MAAM;AAAA,EACN;AACF;AAEO,IAAM,qBAAqB;AAElC,IAAM,oBAAoB,MAAM;AAC9B,SAAO,WAAW,aAAa,QAAQ,kBAAkB;AAC3D;AAEA,IAAM,eAAe,YAAY;AAC/B,MAAI;AACF,UAAM,UAAU,MAAM,WAAW;AACjC,UAAM,YAAa,MAAM,QAAQ,IAAI,kBAAkB;AACvD,WAAO,aAAa,kBAAkB;AAAA,EACxC,SAAS,OAAO;AACd,YAAQ,KAAK,KAAK;AAClB,WAAO,kBAAkB;AAAA,EAC3B;AACF;AAEA,IAAM,eAAe,OAAO,UAAkB;AAC5C,aAAW,aAAa,QAAQ,oBAAoB,KAAK;AACzD,MAAI;AACF,UAAM,UAAU,MAAM,WAAW;AACjC,UAAM,QAAQ,IAAI,oBAAoB,KAAK;AAAA,EAC7C,SAAS,OAAO;AACd,YAAQ,KAAK,KAAK;AAAA,EACpB;AACF;AAEA,IAAM,iBAAiB,YAAY;AACjC,aAAW,aAAa,WAAW,kBAAkB;AACrD,MAAI;AACF,UAAM,UAAU,MAAM,WAAW;AACjC,UAAM,QAAQ,IAAI,kBAAkB;AAAA,EACtC,SAAS,OAAO;AACd,YAAQ,KAAK,KAAK;AAAA,EACpB;AACF;AAEO,IAAM,kBAAkB;AAAA,EAC7B,KAAK;AAAA,EACL,UAAU;AAAA,EACV,KAAK;AAAA,EACL,OAAO;AACT;","names":["storage"]}
@@ -0,0 +1,40 @@
1
+ 'use client'
2
+ import {
3
+ parseJwtPayload
4
+ } from "./chunk-KE76CQSA.mjs";
5
+ import {
6
+ persistenceDatabase
7
+ } from "./chunk-7UFH6ALM.mjs";
8
+ import {
9
+ requestGetToken
10
+ } from "./chunk-V74QQNBA.mjs";
11
+ import {
12
+ m2mAuthTokenApi
13
+ } from "./chunk-4WYT3ILE.mjs";
14
+
15
+ // src/storage/refreshAuth.tsx
16
+ var refreshAuth = async () => {
17
+ const auth = await persistenceDatabase.get("auth");
18
+ if (!auth)
19
+ return null;
20
+ const payload = parseJwtPayload(auth.accessToken);
21
+ if (!payload) {
22
+ return null;
23
+ }
24
+ const { data: newAuth } = await requestGetToken({
25
+ refreshToken: auth.refreshToken.refreshToken,
26
+ userId: payload.userId
27
+ });
28
+ if (newAuth) {
29
+ const authToken = newAuth.accessToken;
30
+ await m2mAuthTokenApi.set(authToken);
31
+ await persistenceDatabase.set("auth", newAuth);
32
+ return authToken;
33
+ }
34
+ return null;
35
+ };
36
+
37
+ export {
38
+ refreshAuth
39
+ };
40
+ //# sourceMappingURL=chunk-5MCHUEWC.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/storage/refreshAuth.tsx"],"sourcesContent":["import { m2mAuthTokenApi } from \"./client\";\r\nimport { parseJwtPayload } from \"./jwt\";\r\nimport { persistenceDatabase } from \"./persistenceDatabase\";\r\nimport { requestGetToken } from \"./api/getToken\";\r\n\r\nexport const refreshAuth = async () => {\r\n const auth = await persistenceDatabase.get(\"auth\");\r\n if (!auth) return null;\r\n\r\n const payload = parseJwtPayload(auth.accessToken);\r\n if (!payload) {\r\n return null;\r\n }\r\n\r\n const { data: newAuth } = await requestGetToken({\r\n refreshToken: auth.refreshToken.refreshToken,\r\n userId: payload.userId,\r\n });\r\n\r\n if (newAuth) {\r\n const authToken = newAuth.accessToken;\r\n await m2mAuthTokenApi.set(authToken);\r\n await persistenceDatabase.set(\"auth\", newAuth);\r\n return authToken;\r\n }\r\n return null;\r\n};\r\n"],"mappings":";;;;;;;;;;;;;;;AAKO,IAAM,cAAc,YAAY;AACrC,QAAM,OAAO,MAAM,oBAAoB,IAAI,MAAM;AACjD,MAAI,CAAC;AAAM,WAAO;AAElB,QAAM,UAAU,gBAAgB,KAAK,WAAW;AAChD,MAAI,CAAC,SAAS;AACZ,WAAO;AAAA,EACT;AAEA,QAAM,EAAE,MAAM,QAAQ,IAAI,MAAM,gBAAgB;AAAA,IAC9C,cAAc,KAAK,aAAa;AAAA,IAChC,QAAQ,QAAQ;AAAA,EAClB,CAAC;AAED,MAAI,SAAS;AACX,UAAM,YAAY,QAAQ;AAC1B,UAAM,gBAAgB,IAAI,SAAS;AACnC,UAAM,oBAAoB,IAAI,QAAQ,OAAO;AAC7C,WAAO;AAAA,EACT;AACA,SAAO;AACT;","names":[]}
@@ -151,4 +151,4 @@ __decorateClass([
151
151
  export {
152
152
  MenuBaseElement
153
153
  };
154
- //# sourceMappingURL=chunk-HI2D4CLX.mjs.map
154
+ //# sourceMappingURL=chunk-6YUMRFSL.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/MenuBaseElement.ts"],"sourcesContent":["import { LitElement, css } from \"lit\";\r\nimport { Ref, createRef } from \"lit/directives/ref.js\";\r\nimport { property } from \"lit/decorators.js\";\r\n\r\nexport interface MenuAdditionalItem {\r\n label: string;\r\n href: string;\r\n}\r\n\r\nexport interface MenuBaseElementProps {\r\n expanded: boolean;\r\n additinalItems: MenuAdditionalItem[];\r\n}\r\n\r\nexport class MenuBaseElement extends LitElement {\r\n static styles = css`\r\n nav {\r\n position: relative;\r\n display: flex;\r\n }\r\n .navigation-drawer-controll-button {\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n\r\n height: 42px;\r\n padding: 0;\r\n cursor: pointer;\r\n background-color: transparent;\r\n border: none;\r\n transition: background-color 0.2s;\r\n appearance: none;\r\n }\r\n .navigation-drawer-controll-button.navigation-drawer-controll-button--icon {\r\n width: 42px;\r\n }\r\n .navigation-drawer-controll-button:hover {\r\n background-color: rgba(0, 0, 0, 0.05);\r\n }\r\n .navigation-drawer-controll-button:active {\r\n background-color: rgba(0, 0, 0, 0.075);\r\n }\r\n\r\n .navigation-drawer {\r\n position: absolute;\r\n top: 100%;\r\n right: 0px;\r\n z-index: 1100;\r\n box-sizing: border-box;\r\n min-width: 200px;\r\n padding: 0px;\r\n margin: 0px;\r\n overflow: hidden;\r\n color: rgba(0, 0, 0, 0.87);\r\n white-space: nowrap;\r\n list-style: none;\r\n background-color: #fff;\r\n border-radius: 5px;\r\n box-shadow:\r\n 0px 1px 3px 0px rgb(0 0 0 / 20%),\r\n 0px 1px 1px 0px rgb(0 0 0 / 14%),\r\n 0px 2px 1px -1px rgb(0 0 0 / 12%);\r\n }\r\n .navigation-drawer-controll-button[aria-expanded=\"false\"]\r\n ~ .navigation-drawer {\r\n display: none;\r\n }\r\n\r\n .navigation-drawer li {\r\n border-bottom: 1px solid #eeeeee;\r\n }\r\n .navigation-drawer li:last-of-type {\r\n border-bottom: none;\r\n }\r\n .navigation-drawer li > a,\r\n .navigation-drawer li > button {\r\n box-sizing: border-box;\r\n display: block;\r\n width: 100%;\r\n padding: 0;\r\n padding: 0.6em 1em;\r\n font: inherit;\r\n color: inherit;\r\n text-align: left;\r\n text-decoration: none;\r\n cursor: pointer;\r\n cursor: pointer;\r\n background-color: transparent;\r\n border: none;\r\n transition: 0.2s;\r\n appearance: none;\r\n }\r\n .navigation-drawer li > a:hover,\r\n .navigation-drawer li > button:hover {\r\n background-color: #ededed;\r\n }\r\n .navigation-drawer li > a:active,\r\n .navigation-drawer li > button:active {\r\n background-color: #dadada;\r\n }\r\n\r\n .navigation-drawer li ul {\r\n padding: 0;\r\n list-style: none;\r\n }\r\n .navigation-drawer li:has(> ul) li > a {\r\n padding-left: 2em;\r\n }\r\n\r\n .navigation-drawer li:has(> ul) > span {\r\n display: block;\r\n padding: 0.6em 1em;\r\n border-bottom: 1px solid #eeeeee;\r\n }\r\n `;\r\n\r\n handleClickOutside = (event: MouseEvent | TouchEvent) => {\r\n if (\r\n !this.listRef.value ||\r\n this.listRef.value.contains(event.composedPath()[0] as Node)\r\n ) {\r\n return;\r\n }\r\n this.expanded = false;\r\n };\r\n\r\n @property({\r\n type: Object,\r\n attribute: \"additional-items\",\r\n })\r\n additinalItems: MenuBaseElementProps[\"additinalItems\"] = [];\r\n\r\n @property()\r\n expanded?: boolean = false;\r\n\r\n handleToggleDrawer = (event: Event) => {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n\r\n // eslint-disable-next-line @typescript-eslint/strict-boolean-expressions\r\n this.expanded = !this.expanded;\r\n if (this.expanded) {\r\n window.addEventListener(\"click\", this.handleClickOutside, false);\r\n }\r\n };\r\n\r\n protected updated() {\r\n if (this.expanded === false) {\r\n window.removeEventListener(\"click\", this.handleClickOutside, false);\r\n }\r\n }\r\n\r\n disconnectedCallback(): void {\r\n super.disconnectedCallback();\r\n window.removeEventListener(\"click\", this.handleClickOutside, false);\r\n }\r\n\r\n listRef: Ref = createRef();\r\n}\r\n"],"mappings":";;;;;;AAAA,SAAS,YAAY,WAAW;AAChC,SAAc,iBAAiB;AAC/B,SAAS,gBAAgB;AAYlB,IAAM,kBAAN,cAA8B,WAAW;AAAA,EAAzC;AAAA;AAsGL,8BAAqB,CAAC,UAAmC;AACvD,UACE,CAAC,KAAK,QAAQ,SACd,KAAK,QAAQ,MAAM,SAAS,MAAM,aAAa,EAAE,CAAC,CAAS,GAC3D;AACA;AAAA,MACF;AACA,WAAK,WAAW;AAAA,IAClB;AAMA,0BAAyD,CAAC;AAG1D,oBAAqB;AAErB,8BAAqB,CAAC,UAAiB;AACrC,YAAM,eAAe;AACrB,YAAM,gBAAgB;AAGtB,WAAK,WAAW,CAAC,KAAK;AACtB,UAAI,KAAK,UAAU;AACjB,eAAO,iBAAiB,SAAS,KAAK,oBAAoB,KAAK;AAAA,MACjE;AAAA,IACF;AAaA,mBAAe,UAAU;AAAA;AAAA,EAXf,UAAU;AAClB,QAAI,KAAK,aAAa,OAAO;AAC3B,aAAO,oBAAoB,SAAS,KAAK,oBAAoB,KAAK;AAAA,IACpE;AAAA,EACF;AAAA,EAEA,uBAA6B;AAC3B,UAAM,qBAAqB;AAC3B,WAAO,oBAAoB,SAAS,KAAK,oBAAoB,KAAK;AAAA,EACpE;AAGF;AAhJa,gBACJ,SAAS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAmHhB;AAAA,EAJC,SAAS;AAAA,IACR,MAAM;AAAA,IACN,WAAW;AAAA,EACb,CAAC;AAAA,GAnHU,gBAoHX;AAGA;AAAA,EADC,SAAS;AAAA,GAtHC,gBAuHX;","names":[]}
@@ -0,0 +1,24 @@
1
+ 'use client'
2
+
3
+ // src/storage/persistenceDatabase.ts
4
+ import { openDB } from "idb";
5
+ var dbPromise = openDB("persistence-store", 1, {
6
+ upgrade(db) {
7
+ db.createObjectStore("persistence");
8
+ }
9
+ });
10
+ var get = async (key) => {
11
+ return (await dbPromise).get("persistence", key);
12
+ };
13
+ var set = async (key, val) => {
14
+ return (await dbPromise).put("persistence", val, key);
15
+ };
16
+ var persistenceDatabase = {
17
+ get,
18
+ set
19
+ };
20
+
21
+ export {
22
+ persistenceDatabase
23
+ };
24
+ //# sourceMappingURL=chunk-7UFH6ALM.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/storage/persistenceDatabase.ts"],"sourcesContent":["import { DBSchema, openDB } from \"idb\";\r\nimport { LoginResponse } from \"./api/login\";\r\n\r\ninterface PersistenceDatabase extends DBSchema {\r\n persistence: {\r\n value: LoginResponse;\r\n key: \"auth\";\r\n };\r\n}\r\n\r\nconst dbPromise = openDB<PersistenceDatabase>(\"persistence-store\", 1, {\r\n upgrade(db) {\r\n db.createObjectStore(\"persistence\");\r\n },\r\n});\r\n\r\nconst get = async (key: \"auth\") => {\r\n return (await dbPromise).get(\"persistence\", key);\r\n};\r\nconst set = async (key: \"auth\", val: LoginResponse) => {\r\n return (await dbPromise).put(\"persistence\", val, key);\r\n};\r\n\r\nexport const persistenceDatabase = {\r\n get,\r\n set,\r\n};\r\n"],"mappings":";;;AAAA,SAAmB,cAAc;AAUjC,IAAM,YAAY,OAA4B,qBAAqB,GAAG;AAAA,EACpE,QAAQ,IAAI;AACV,OAAG,kBAAkB,aAAa;AAAA,EACpC;AACF,CAAC;AAED,IAAM,MAAM,OAAO,QAAgB;AACjC,UAAQ,MAAM,WAAW,IAAI,eAAe,GAAG;AACjD;AACA,IAAM,MAAM,OAAO,KAAa,QAAuB;AACrD,UAAQ,MAAM,WAAW,IAAI,eAAe,KAAK,GAAG;AACtD;AAEO,IAAM,sBAAsB;AAAA,EACjC;AAAA,EACA;AACF;","names":[]}
@@ -0,0 +1,94 @@
1
+ 'use client'
2
+
3
+ // src/storage/lib/hub.ts
4
+ var context = {};
5
+ var init = (permissions) => {
6
+ context.permissions = permissions;
7
+ window.addEventListener("message", listener, false);
8
+ window.parent.postMessage("cross-storage:ready", "*");
9
+ };
10
+ var permitted = (origin, method) => {
11
+ const available = ["get", "set", "del", "clear", "getKeys"];
12
+ if (!available.includes(method)) {
13
+ return false;
14
+ }
15
+ if (context.permissions === void 0) {
16
+ return false;
17
+ }
18
+ for (let i = 0; i < context.permissions.length; i++) {
19
+ const entry = context.permissions[i];
20
+ const match = entry.origin.test(origin);
21
+ if (match && entry.allow.includes(method)) {
22
+ return true;
23
+ }
24
+ }
25
+ return false;
26
+ };
27
+ var methods = {
28
+ get: (params) => {
29
+ const storage = window.localStorage;
30
+ const result = [];
31
+ for (let i = 0; i < params.keys.length; i++) {
32
+ const value = storage.getItem(params.keys[i]) || null;
33
+ result.push(value);
34
+ }
35
+ return result.length > 1 ? result : result[0];
36
+ },
37
+ set: (params) => {
38
+ window.localStorage.setItem(params.key, params.value);
39
+ },
40
+ del: (params) => {
41
+ for (var i = 0; i < params.keys.length; i++) {
42
+ window.localStorage.removeItem(params.keys[i]);
43
+ }
44
+ },
45
+ getKeys: () => {
46
+ const keys = [];
47
+ const length = window.localStorage.length;
48
+ for (let i = 0; i < length; i++) {
49
+ keys.push(window.localStorage.key(i));
50
+ }
51
+ return keys;
52
+ },
53
+ clear: () => {
54
+ window.localStorage.clear();
55
+ }
56
+ };
57
+ var listener = (message) => {
58
+ const origin = message.origin === "null" ? "file://" : message.origin;
59
+ if (message.data === "cross-storage:poll") {
60
+ return window.parent.postMessage("cross-storage:ready", message.origin);
61
+ }
62
+ if (message.data === "cross-storage:ready")
63
+ return;
64
+ const request = JSON.parse(message.data);
65
+ if (!request || typeof request.method !== "string") {
66
+ return;
67
+ }
68
+ const method = request.method.split("cross-storage:")[1];
69
+ let error = "";
70
+ let result = void 0;
71
+ if (!method) {
72
+ return;
73
+ } else if (!permitted(origin, method)) {
74
+ error = "Invalid permissions for " + method;
75
+ } else {
76
+ try {
77
+ result = methods[method](request.params);
78
+ } catch (err) {
79
+ error = err.message;
80
+ }
81
+ }
82
+ const response = JSON.stringify({
83
+ id: request.id,
84
+ error,
85
+ result
86
+ });
87
+ const targetOrigin = origin === "file://" ? "*" : origin;
88
+ window.parent.postMessage(response, targetOrigin);
89
+ };
90
+
91
+ export {
92
+ init
93
+ };
94
+ //# sourceMappingURL=chunk-AYYVMRUA.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/storage/lib/hub.ts"],"sourcesContent":["/**\n * この実装はcross-storageほぼそのままです。\n */\ntype Method = \"get\" | \"set\" | \"del\" | \"getKeys\" | \"clear\";\n\nexport interface Permission {\n origin: RegExp;\n allow: Method[];\n}\n\nconst context: {\n permissions?: Permission[];\n} = {};\n\n/**\n * Do not use this directly. This specifications are subject to significant change.\n * @internal\n */\nexport const init = (permissions: Permission[]) => {\n context.permissions = permissions;\n window.addEventListener(\"message\", listener, false);\n window.parent.postMessage(\"cross-storage:ready\", \"*\");\n};\n\nconst permitted = (origin: string, method: Method) => {\n const available = [\"get\", \"set\", \"del\", \"clear\", \"getKeys\"];\n if (!available.includes(method)) {\n return false;\n }\n\n if (context.permissions === undefined) {\n return false;\n }\n\n for (let i = 0; i < context.permissions.length; i++) {\n const entry = context.permissions[i];\n const match = entry.origin.test(origin);\n if (match && entry.allow.includes(method)) {\n return true;\n }\n }\n return false;\n};\n\nconst methods: {\n // eslint-disable-next-line @typescript-eslint/ban-types\n [key in Method]: Function;\n} = {\n get: (params: { keys: string[] }) => {\n const storage = window.localStorage;\n const result = [];\n for (let i = 0; i < params.keys.length; i++) {\n const value = storage.getItem(params.keys[i]) || null;\n result.push(value);\n }\n // Todo: このパターン好きじゃない\n return result.length > 1 ? result : result[0];\n },\n set: (params: { key: string; value: string }) => {\n window.localStorage.setItem(params.key, params.value);\n },\n del: (params: { keys: string[] }) => {\n for (var i = 0; i < params.keys.length; i++) {\n window.localStorage.removeItem(params.keys[i]);\n }\n },\n getKeys: () => {\n const keys = [];\n const length = window.localStorage.length;\n\n for (let i = 0; i < length; i++) {\n keys.push(window.localStorage.key(i));\n }\n\n return keys;\n },\n clear: () => {\n window.localStorage.clear();\n },\n};\n\ninterface Message {\n origin: string;\n data: string;\n}\n\nconst listener = (message: Message) => {\n // postMessage returns the string \"null\" as the origin for \"file://\"\n const origin = message.origin === \"null\" ? \"file://\" : message.origin;\n\n // Handle polling for a ready message\n if (message.data === \"cross-storage:poll\") {\n return window.parent.postMessage(\"cross-storage:ready\", message.origin);\n }\n\n // Ignore the ready message when viewing the hub directly\n if (message.data === \"cross-storage:ready\") return;\n\n const request: {\n id: string;\n method?: string;\n // eslint-disable-next-line @typescript-eslint/ban-types\n params: Object;\n } = JSON.parse(message.data);\n\n // Check whether request.method is a string\n if (!request || typeof request.method !== \"string\") {\n return;\n }\n\n const method = request.method.split(\"cross-storage:\")[1] as Method;\n\n let error = \"\";\n let result: string | undefined = undefined;\n\n if (!method) {\n return;\n } else if (!permitted(origin, method)) {\n error = \"Invalid permissions for \" + method;\n } else {\n try {\n result = methods[method](request.params);\n } catch (err) {\n error = (err as Error).message;\n }\n }\n\n const response = JSON.stringify({\n id: request.id,\n error: error,\n result: result,\n });\n\n // postMessage requires that the target origin be set to \"*\" for \"file://\"\n const targetOrigin = origin === \"file://\" ? \"*\" : origin;\n\n window.parent.postMessage(response, targetOrigin);\n};\n"],"mappings":";;;AAUA,IAAM,UAEF,CAAC;AAME,IAAM,OAAO,CAAC,gBAA8B;AACjD,UAAQ,cAAc;AACtB,SAAO,iBAAiB,WAAW,UAAU,KAAK;AAClD,SAAO,OAAO,YAAY,uBAAuB,GAAG;AACtD;AAEA,IAAM,YAAY,CAAC,QAAgB,WAAmB;AACpD,QAAM,YAAY,CAAC,OAAO,OAAO,OAAO,SAAS,SAAS;AAC1D,MAAI,CAAC,UAAU,SAAS,MAAM,GAAG;AAC/B,WAAO;AAAA,EACT;AAEA,MAAI,QAAQ,gBAAgB,QAAW;AACrC,WAAO;AAAA,EACT;AAEA,WAAS,IAAI,GAAG,IAAI,QAAQ,YAAY,QAAQ,KAAK;AACnD,UAAM,QAAQ,QAAQ,YAAY,CAAC;AACnC,UAAM,QAAQ,MAAM,OAAO,KAAK,MAAM;AACtC,QAAI,SAAS,MAAM,MAAM,SAAS,MAAM,GAAG;AACzC,aAAO;AAAA,IACT;AAAA,EACF;AACA,SAAO;AACT;AAEA,IAAM,UAGF;AAAA,EACF,KAAK,CAAC,WAA+B;AACnC,UAAM,UAAU,OAAO;AACvB,UAAM,SAAS,CAAC;AAChB,aAAS,IAAI,GAAG,IAAI,OAAO,KAAK,QAAQ,KAAK;AAC3C,YAAM,QAAQ,QAAQ,QAAQ,OAAO,KAAK,CAAC,CAAC,KAAK;AACjD,aAAO,KAAK,KAAK;AAAA,IACnB;AAEA,WAAO,OAAO,SAAS,IAAI,SAAS,OAAO,CAAC;AAAA,EAC9C;AAAA,EACA,KAAK,CAAC,WAA2C;AAC/C,WAAO,aAAa,QAAQ,OAAO,KAAK,OAAO,KAAK;AAAA,EACtD;AAAA,EACA,KAAK,CAAC,WAA+B;AACnC,aAAS,IAAI,GAAG,IAAI,OAAO,KAAK,QAAQ,KAAK;AAC3C,aAAO,aAAa,WAAW,OAAO,KAAK,CAAC,CAAC;AAAA,IAC/C;AAAA,EACF;AAAA,EACA,SAAS,MAAM;AACb,UAAM,OAAO,CAAC;AACd,UAAM,SAAS,OAAO,aAAa;AAEnC,aAAS,IAAI,GAAG,IAAI,QAAQ,KAAK;AAC/B,WAAK,KAAK,OAAO,aAAa,IAAI,CAAC,CAAC;AAAA,IACtC;AAEA,WAAO;AAAA,EACT;AAAA,EACA,OAAO,MAAM;AACX,WAAO,aAAa,MAAM;AAAA,EAC5B;AACF;AAOA,IAAM,WAAW,CAAC,YAAqB;AAErC,QAAM,SAAS,QAAQ,WAAW,SAAS,YAAY,QAAQ;AAG/D,MAAI,QAAQ,SAAS,sBAAsB;AACzC,WAAO,OAAO,OAAO,YAAY,uBAAuB,QAAQ,MAAM;AAAA,EACxE;AAGA,MAAI,QAAQ,SAAS;AAAuB;AAE5C,QAAM,UAKF,KAAK,MAAM,QAAQ,IAAI;AAG3B,MAAI,CAAC,WAAW,OAAO,QAAQ,WAAW,UAAU;AAClD;AAAA,EACF;AAEA,QAAM,SAAS,QAAQ,OAAO,MAAM,gBAAgB,EAAE,CAAC;AAEvD,MAAI,QAAQ;AACZ,MAAI,SAA6B;AAEjC,MAAI,CAAC,QAAQ;AACX;AAAA,EACF,WAAW,CAAC,UAAU,QAAQ,MAAM,GAAG;AACrC,YAAQ,6BAA6B;AAAA,EACvC,OAAO;AACL,QAAI;AACF,eAAS,QAAQ,MAAM,EAAE,QAAQ,MAAM;AAAA,IACzC,SAAS,KAAK;AACZ,cAAS,IAAc;AAAA,IACzB;AAAA,EACF;AAEA,QAAM,WAAW,KAAK,UAAU;AAAA,IAC9B,IAAI,QAAQ;AAAA,IACZ;AAAA,IACA;AAAA,EACF,CAAC;AAGD,QAAM,eAAe,WAAW,YAAY,MAAM;AAElD,SAAO,OAAO,YAAY,UAAU,YAAY;AAClD;","names":[]}