m2m-components 3.3.1-alpha-e3d71ae.0 → 4.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.
Files changed (85) hide show
  1. package/MenuBaseElement.js +4 -2
  2. package/MenuBaseElement.js.map +1 -1
  3. package/MenuBaseElement.mjs +1 -1
  4. package/{chunk-M4ZBTA6A.mjs → chunk-4FZMOOVK.mjs} +2 -2
  5. package/{chunk-V4ROE7DI.mjs → chunk-5V2GM6RK.mjs} +1 -1
  6. package/chunk-5V2GM6RK.mjs.map +1 -0
  7. package/{chunk-CB56CZRA.mjs → chunk-7AG7KXCA.mjs} +932 -662
  8. package/chunk-7AG7KXCA.mjs.map +1 -0
  9. package/{chunk-UM6FAKR4.mjs → chunk-HUDZ5XFT.mjs} +5 -3
  10. package/chunk-HUDZ5XFT.mjs.map +1 -0
  11. package/{chunk-CEBJL6ZD.mjs → chunk-IYTHV2XJ.mjs} +1 -1
  12. package/chunk-IYTHV2XJ.mjs.map +1 -0
  13. package/{chunk-VNCVFELM.mjs → chunk-L74NH4WS.mjs} +2 -2
  14. package/chunk-L74NH4WS.mjs.map +1 -0
  15. package/{chunk-BFPL6AIR.mjs → chunk-LDGBJZJJ.mjs} +3 -3
  16. package/{chunk-UOPEIK22.mjs → chunk-LUTUMV2M.mjs} +1 -1
  17. package/chunk-LUTUMV2M.mjs.map +1 -0
  18. package/{chunk-LYVJL4T5.mjs → chunk-NZ7UIHAB.mjs} +2 -2
  19. package/{chunk-LDSJ6KYP.mjs → chunk-UXYQOQLC.mjs} +1 -1
  20. package/chunk-UXYQOQLC.mjs.map +1 -0
  21. package/{chunk-5FHEMJGG.mjs → chunk-Y36VD6Z6.mjs} +2 -2
  22. package/chunk-Y36VD6Z6.mjs.map +1 -0
  23. package/feedback/MultipleTextQuestion.js.map +1 -1
  24. package/feedback/MultipleTextQuestion.mjs +1 -1
  25. package/feedback/index.js +904 -665
  26. package/feedback/index.js.map +1 -1
  27. package/feedback/index.mjs +3 -4
  28. package/index.js +4 -2
  29. package/index.js.map +1 -1
  30. package/index.mjs +13 -14
  31. package/initM2mComponents.js.map +1 -1
  32. package/initM2mComponents.mjs +3 -3
  33. package/m2m-apps-menu.js +4 -2
  34. package/m2m-apps-menu.js.map +1 -1
  35. package/m2m-apps-menu.mjs +2 -2
  36. package/{releases/m2m-releases-link.js → m2m-releases-link.js} +2 -2
  37. package/m2m-releases-link.js.map +1 -0
  38. package/{releases/m2m-releases-link.mjs → m2m-releases-link.mjs} +3 -3
  39. package/m2m-releases-link.mjs.map +1 -0
  40. package/m2m-user-menu.js +4 -2
  41. package/m2m-user-menu.js.map +1 -1
  42. package/m2m-user-menu.mjs +4 -4
  43. package/notification/NotificationProvider.js.map +1 -1
  44. package/notification/NotificationProvider.mjs +2 -2
  45. package/notification/ServiceIdProvider.js.map +1 -1
  46. package/notification/ServiceIdProvider.mjs +1 -1
  47. package/notification/api.js.map +1 -1
  48. package/notification/api.mjs +1 -1
  49. package/notification/index.js.map +1 -1
  50. package/notification/index.mjs +3 -3
  51. package/package.json +9 -75
  52. package/storage/client.js.map +1 -1
  53. package/storage/client.mjs +2 -2
  54. package/storage/lib/client.js.map +1 -1
  55. package/storage/lib/client.mjs +1 -1
  56. package/storage/useM2mAuth.js.map +1 -1
  57. package/storage/useM2mAuth.mjs +95 -6
  58. package/storage/useM2mAuth.mjs.map +1 -1
  59. package/chunk-3YQYBFME.mjs +0 -102
  60. package/chunk-3YQYBFME.mjs.map +0 -1
  61. package/chunk-5FHEMJGG.mjs.map +0 -1
  62. package/chunk-CB56CZRA.mjs.map +0 -1
  63. package/chunk-CEBJL6ZD.mjs.map +0 -1
  64. package/chunk-DEC3QHKP.mjs +0 -8491
  65. package/chunk-DEC3QHKP.mjs.map +0 -1
  66. package/chunk-LDSJ6KYP.mjs.map +0 -1
  67. package/chunk-UCJSCAN5.mjs +0 -45
  68. package/chunk-UCJSCAN5.mjs.map +0 -1
  69. package/chunk-UM6FAKR4.mjs.map +0 -1
  70. package/chunk-UOPEIK22.mjs.map +0 -1
  71. package/chunk-V4ROE7DI.mjs.map +0 -1
  72. package/chunk-VNCVFELM.mjs.map +0 -1
  73. package/releases/m2m-releases-link.js.map +0 -1
  74. package/releases/m2m-releases-link.mjs.map +0 -1
  75. package/storage/useM2mAuth.test.d.mts +0 -2
  76. package/storage/useM2mAuth.test.d.ts +0 -2
  77. package/storage/useM2mAuth.test.js +0 -60906
  78. package/storage/useM2mAuth.test.js.map +0 -1
  79. package/storage/useM2mAuth.test.mjs +0 -60682
  80. package/storage/useM2mAuth.test.mjs.map +0 -1
  81. /package/{chunk-M4ZBTA6A.mjs.map → chunk-4FZMOOVK.mjs.map} +0 -0
  82. /package/{chunk-BFPL6AIR.mjs.map → chunk-LDGBJZJJ.mjs.map} +0 -0
  83. /package/{chunk-LYVJL4T5.mjs.map → chunk-NZ7UIHAB.mjs.map} +0 -0
  84. /package/{releases/m2m-releases-link.d.mts → m2m-releases-link.d.mts} +0 -0
  85. /package/{releases/m2m-releases-link.d.ts → m2m-releases-link.d.ts} +0 -0
@@ -110,8 +110,10 @@ MenuBaseElement.styles = import_lit.css`
110
110
  list-style: none;
111
111
  background-color: #fff;
112
112
  border-radius: 5px;
113
- box-shadow: 0px 1px 3px 0px rgb(0 0 0 / 20%),
114
- 0px 1px 1px 0px rgb(0 0 0 / 14%), 0px 2px 1px -1px rgb(0 0 0 / 12%);
113
+ box-shadow:
114
+ 0px 1px 3px 0px rgb(0 0 0 / 20%),
115
+ 0px 1px 1px 0px rgb(0 0 0 / 14%),
116
+ 0px 2px 1px -1px rgb(0 0 0 / 12%);
115
117
  }
116
118
  .navigation-drawer-controll-button[aria-expanded="false"]
117
119
  ~ .navigation-drawer {
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/MenuBaseElement.ts"],"sourcesContent":["import { LitElement, css } from \"lit\";\nimport { 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: 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 }\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 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"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,iBAAgC;AAChC,iBAA0B;AAC1B,wBAAyB;AAYlB,IAAM,kBAAN,cAA8B,sBAAW;AAAA,EAAzC;AAAA;AAoGL,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;AAEtB,WAAK,WAAW,CAAC,KAAK;AACtB,UAAI,KAAK,UAAU;AACjB,eAAO,iBAAiB,SAAS,KAAK,oBAAoB,KAAK;AAAA,MACjE;AAAA,IACF;AAaA,uBAAU,sBAAU;AAAA;AAAA,EAXV,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;AA7Ia,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;AAiHhB;AAAA,MAJC,4BAAS;AAAA,IACR,MAAM;AAAA,IACN,WAAW;AAAA,EACb,CAAC;AAAA,GAjHU,gBAkHX;AAGA;AAAA,MADC,4BAAS;AAAA,GApHC,gBAqHX;","names":[]}
1
+ {"version":3,"sources":["../src/MenuBaseElement.ts"],"sourcesContent":["import { LitElement, css } from \"lit\";\nimport { 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 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"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,iBAAgC;AAChC,iBAA0B;AAC1B,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;AAEtB,WAAK,WAAW,CAAC,KAAK;AACtB,UAAI,KAAK,UAAU;AACjB,eAAO,iBAAiB,SAAS,KAAK,oBAAoB,KAAK;AAAA,MACjE;AAAA,IACF;AAaA,uBAAU,sBAAU;AAAA;AAAA,EAXV,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;AA/Ia,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-UM6FAKR4.mjs";
4
+ } from "./chunk-HUDZ5XFT.mjs";
5
5
  import "./chunk-JUBOAWNR.mjs";
6
6
  export {
7
7
  MenuBaseElement
@@ -1,7 +1,7 @@
1
1
  'use client'
2
2
  import {
3
3
  m2mStorageClient
4
- } from "./chunk-5FHEMJGG.mjs";
4
+ } from "./chunk-Y36VD6Z6.mjs";
5
5
 
6
6
  // src/initM2mComponents.ts
7
7
  var initM2mComponents = (args) => {
@@ -16,4 +16,4 @@ var initM2mComponents = (args) => {
16
16
  export {
17
17
  initM2mComponents
18
18
  };
19
- //# sourceMappingURL=chunk-M4ZBTA6A.mjs.map
19
+ //# sourceMappingURL=chunk-4FZMOOVK.mjs.map
@@ -51,4 +51,4 @@ export {
51
51
  requestSubscribe,
52
52
  requestUnSubscribe
53
53
  };
54
- //# sourceMappingURL=chunk-V4ROE7DI.mjs.map
54
+ //# sourceMappingURL=chunk-5V2GM6RK.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/notification/api.ts"],"sourcesContent":["import { Subscription } from \"./domain\";\nimport { fetcher } from \"matsuri-hooks\";\nimport { m2mNotifications_v1 } from \"../endpoints/m2m-notifications.v1\";\n\nexport const requestUpdateNotificationStatusToRead = async (\n token: string,\n id: string,\n) => {\n await fetcher(\n m2mNotifications_v1.updateNotificationStatus({\n id,\n }),\n {\n method: \"PUT\",\n token,\n body: JSON.stringify({ status: \"read\" }),\n },\n );\n};\n\nexport const requestSubscribe = async (\n token: string,\n serviceId: string,\n input: Pick<Subscription, \"notificationType\" | \"resourceSubscription\">,\n) => {\n const { error } = await fetcher(m2mNotifications_v1.saveSubscription(), {\n method: \"POST\",\n token,\n body: JSON.stringify({\n ...input,\n serviceId,\n status: \"subscribed\",\n }),\n });\n if (error) {\n console.error(error);\n }\n};\n\nexport const requestUnSubscribe = async (\n token: string,\n serviceId: string,\n input: Pick<Subscription, \"notificationType\" | \"resourceSubscription\">,\n) => {\n const { error } = await fetcher(m2mNotifications_v1.saveSubscription(), {\n method: \"POST\",\n token,\n body: JSON.stringify({\n ...input,\n serviceId,\n status: \"denied\",\n }),\n });\n if (error) {\n console.error(error);\n }\n};\n"],"mappings":";;;;;;AACA,SAAS,eAAe;AAGjB,IAAM,wCAAwC,OACnD,OACA,OACG;AACH,QAAM;AAAA,IACJ,oBAAoB,yBAAyB;AAAA,MAC3C;AAAA,IACF,CAAC;AAAA,IACD;AAAA,MACE,QAAQ;AAAA,MACR;AAAA,MACA,MAAM,KAAK,UAAU,EAAE,QAAQ,OAAO,CAAC;AAAA,IACzC;AAAA,EACF;AACF;AAEO,IAAM,mBAAmB,OAC9B,OACA,WACA,UACG;AACH,QAAM,EAAE,MAAM,IAAI,MAAM,QAAQ,oBAAoB,iBAAiB,GAAG;AAAA,IACtE,QAAQ;AAAA,IACR;AAAA,IACA,MAAM,KAAK,UAAU;AAAA,MACnB,GAAG;AAAA,MACH;AAAA,MACA,QAAQ;AAAA,IACV,CAAC;AAAA,EACH,CAAC;AACD,MAAI,OAAO;AACT,YAAQ,MAAM,KAAK;AAAA,EACrB;AACF;AAEO,IAAM,qBAAqB,OAChC,OACA,WACA,UACG;AACH,QAAM,EAAE,MAAM,IAAI,MAAM,QAAQ,oBAAoB,iBAAiB,GAAG;AAAA,IACtE,QAAQ;AAAA,IACR;AAAA,IACA,MAAM,KAAK,UAAU;AAAA,MACnB,GAAG;AAAA,MACH;AAAA,MACA,QAAQ;AAAA,IACV,CAAC;AAAA,EACH,CAAC;AACD,MAAI,OAAO;AACT,YAAQ,MAAM,KAAK;AAAA,EACrB;AACF;","names":[]}