@ably/ui 8.7.0-dev.9659fc3 → 8.7.0-dev.994f756

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 (91) hide show
  1. package/README.md +16 -5
  2. package/core/.DS_Store +0 -0
  3. package/core/Code/component.js +1 -1
  4. package/core/Code.jsx +24 -4
  5. package/core/DropdownMenu/component.js +1 -0
  6. package/core/DropdownMenu.jsx +313 -0
  7. package/core/Flash.jsx +129 -57
  8. package/core/Footer/component.css +21 -1
  9. package/core/Footer.jsx +140 -49
  10. package/core/Logo.jsx +28 -113
  11. package/core/Meganav/component.css +1 -1
  12. package/core/Meganav/component.json +1 -1
  13. package/core/Meganav.jsx +256 -235
  14. package/core/MeganavContentCompany.jsx +13 -1
  15. package/core/MeganavContentDevelopers.jsx +21 -9
  16. package/core/MeganavContentPlatform.jsx +8 -8
  17. package/core/MeganavContentUseCases.jsx +50 -42
  18. package/core/MeganavItemsDesktop.jsx +1 -1
  19. package/core/MeganavItemsMobile.jsx +1 -1
  20. package/core/Notice/component.js +1 -1
  21. package/core/Notice.jsx +130 -58
  22. package/core/images/ably-logo.png +0 -0
  23. package/core/images/high-performer-2022.png +0 -0
  24. package/core/images/highest-user-adoption-2022.png +0 -0
  25. package/core/images/users-love-us-2022.png +0 -0
  26. package/core/sprites.svg +106 -1
  27. package/core/styles.css +3 -1
  28. package/package.json +1 -1
  29. package/src/.DS_Store +0 -0
  30. package/src/core/.DS_Store +0 -0
  31. package/src/core/DropdownMenu/component.jsx +112 -0
  32. package/src/core/FeatureFooter/component.html.erb +1 -1
  33. package/src/core/Flash/component.jsx +40 -14
  34. package/src/core/Footer/component.css +21 -1
  35. package/src/core/Footer/component.html.erb +118 -56
  36. package/src/core/Footer/component.jsx +125 -50
  37. package/src/core/Logo/component.html.erb +2 -27
  38. package/src/core/Logo/component.jsx +7 -40
  39. package/src/core/Logo/component.rb +15 -6
  40. package/src/core/Meganav/component.css +1 -1
  41. package/src/core/Meganav/component.html.erb +1 -1
  42. package/src/core/Meganav/component.json +1 -1
  43. package/src/core/Meganav/component.jsx +1 -1
  44. package/src/core/Meganav/component.rb +3 -2
  45. package/src/core/MeganavContentCompany/component.html.erb +9 -0
  46. package/src/core/MeganavContentCompany/component.jsx +9 -0
  47. package/src/core/MeganavContentDevelopers/component.html.erb +17 -8
  48. package/src/core/MeganavContentDevelopers/component.jsx +17 -8
  49. package/src/core/MeganavContentPlatform/component.html.erb +6 -6
  50. package/src/core/MeganavContentPlatform/component.jsx +6 -6
  51. package/src/core/MeganavContentUseCases/component.html.erb +43 -39
  52. package/src/core/MeganavContentUseCases/component.jsx +42 -39
  53. package/src/core/MeganavSearchSuggestions/component.html.erb +1 -1
  54. package/src/core/core.rb +12 -4
  55. package/src/core/icons/github.svg +1 -1
  56. package/src/core/icons/google.svg +3 -0
  57. package/src/core/icons/icon-display-chat-col.svg +4 -0
  58. package/src/core/icons/icon-display-data-broadcast-col.svg +26 -0
  59. package/src/core/icons/icon-display-data-synchronization-col.svg +14 -0
  60. package/src/core/icons/icon-display-events-col.svg +13 -0
  61. package/src/core/icons/icon-display-integrations-col.svg +8 -0
  62. package/src/core/icons/icon-display-kafka-at-the-edge-col.svg +8 -0
  63. package/src/core/icons/icon-display-push-notifications-col.svg +6 -0
  64. package/src/core/icons/icon-gui-check-circled-fill-black.svg +4 -0
  65. package/src/core/icons/icon-gui-filter-flow-step-1.svg +5 -0
  66. package/src/core/icons/icon-gui-filter-flow-step-2.svg +5 -0
  67. package/src/core/icons/icon-gui-filter-flow-step-3.svg +5 -0
  68. package/src/core/icons/icon-gui-resources.svg +3 -0
  69. package/src/core/icons/icon-tech-apachekafka.svg +3 -0
  70. package/src/core/icons/stackoverflow.svg +3 -0
  71. package/src/core/icons/youtube.svg +11 -0
  72. package/src/core/images/ably-logo.png +0 -0
  73. package/src/core/images/high-performer-2022.png +0 -0
  74. package/src/core/images/highest-user-adoption-2022.png +0 -0
  75. package/src/core/images/users-love-us-2022.png +0 -0
  76. package/src/core/styles/forms.css +1 -1
  77. package/src/core/styles/properties.css +2 -0
  78. package/src/core/utils/syntax-highlighter-registry.js +2 -0
  79. package/src/core/utils/syntax-highlighter.js +5 -0
  80. package/tailwind.config.js +1 -0
  81. package/core/fonts/.DS_Store +0 -0
  82. package/core/images/.DS_Store +0 -0
  83. package/core/scripts.js.LICENSE.txt +0 -32
  84. package/preview/vendor/bundle/ruby/3.0.0/bundler/gems/ably-ui-abffd210ec0f/preview/tmp/.keep +0 -0
  85. package/preview/vendor/bundle/ruby/3.0.0/bundler/gems/ably-ui-abffd210ec0f/preview/tmp/pids/.keep +0 -0
  86. package/src/core/fonts/.DS_Store +0 -0
  87. package/src/core/images/.DS_Store +0 -0
  88. package/src/reset/.DS_Store +0 -0
  89. /package/core/{MeganavContentWhyAbly → DropdownMenuPreview}/component.js +0 -0
  90. /package/core/{MeganavContentWhyAbly.jsx → DropdownMenuPreview.jsx} +0 -0
  91. /package/{preview/vendor/bundle/ruby/3.0.0/bundler/gems/ably-ui-abffd210ec0f/preview/log/.keep → src/core/DropdownMenu/component.js} +0 -0
package/README.md CHANGED
@@ -239,7 +239,14 @@ yarn link @ably/ui
239
239
 
240
240
  For `ruby`:
241
241
 
242
- In `preview/Gemfile` replace `source: "https://rubygems.pkg.github.com/ably"` with `path: '../'` and run:
242
+ In `preview/Gemfile` replace the Ably UI gem version number with `path: '../'` like this:
243
+
244
+ ```bash
245
+ # in preview
246
+ gem 'ably-ui', path: '../', require: 'ably_ui'
247
+ ```
248
+
249
+ and run:
243
250
 
244
251
  ```bash
245
252
  # in preview
@@ -284,13 +291,17 @@ To deploy a review app with your in-progress code, you can use the `pre-release`
284
291
 
285
292
  ```bash
286
293
  # in root
287
- ./pre-release
294
+ scripts/pre-release.sh
288
295
  ```
289
296
 
290
- This will do a couple of things:
297
+ This script is a combination of two scripts:
298
+
299
+ 1. Pre-Release:
300
+
301
+ - update your local dependencies for ably-ui and run a production build
302
+ - release a gem and a NPM package with the version built from your current SemVer but adding a pre-release tag based on a short SHA of your HEAD commit
291
303
 
292
- update your local dependencies for ably-ui and run a production build
293
- — release a gem and a NPM package with the version built from your current SemVer but adding a pre-release tag based on a short SHA of your HEAD commit
304
+ 2. Update Pre-Release Version:
294
305
 
295
306
  - update the preview app
296
307
  - commit all the above and push to origin
package/core/.DS_Store CHANGED
Binary file
@@ -1 +1 @@
1
- !function(e,i){"object"==typeof exports&&"object"==typeof module?module.exports=i(require("highlight.js/lib/core"),require("highlight.js/lib/languages/bash"),require("highlight.js/lib/languages/cpp"),require("highlight.js/lib/languages/csharp"),require("highlight.js/lib/languages/css"),require("highlight.js/lib/languages/dart"),require("highlight.js/lib/languages/diff"),require("highlight.js/lib/languages/dos"),require("highlight.js/lib/languages/elixir"),require("highlight.js/lib/languages/erlang"),require("highlight.js/lib/languages/go"),require("highlight.js/lib/languages/http"),require("highlight.js/lib/languages/java"),require("highlight.js/lib/languages/javascript"),require("highlight.js/lib/languages/json"),require("highlight.js/lib/languages/objectivec"),require("highlight.js/lib/languages/php"),require("highlight.js/lib/languages/plaintext"),require("highlight.js/lib/languages/python"),require("highlight.js/lib/languages/ruby"),require("highlight.js/lib/languages/sql"),require("highlight.js/lib/languages/swift"),require("highlight.js/lib/languages/typescript"),require("highlight.js/lib/languages/xml"),require("highlight.js/lib/languages/yaml"),require("highlightjs-curl/src/languages/curl")):"function"==typeof define&&define.amd?define([,,,,,,,,,,,,,,,,,,,,,,,,,],i):"object"==typeof exports?exports.AblyUi=i(require("highlight.js/lib/core"),require("highlight.js/lib/languages/bash"),require("highlight.js/lib/languages/cpp"),require("highlight.js/lib/languages/csharp"),require("highlight.js/lib/languages/css"),require("highlight.js/lib/languages/dart"),require("highlight.js/lib/languages/diff"),require("highlight.js/lib/languages/dos"),require("highlight.js/lib/languages/elixir"),require("highlight.js/lib/languages/erlang"),require("highlight.js/lib/languages/go"),require("highlight.js/lib/languages/http"),require("highlight.js/lib/languages/java"),require("highlight.js/lib/languages/javascript"),require("highlight.js/lib/languages/json"),require("highlight.js/lib/languages/objectivec"),require("highlight.js/lib/languages/php"),require("highlight.js/lib/languages/plaintext"),require("highlight.js/lib/languages/python"),require("highlight.js/lib/languages/ruby"),require("highlight.js/lib/languages/sql"),require("highlight.js/lib/languages/swift"),require("highlight.js/lib/languages/typescript"),require("highlight.js/lib/languages/xml"),require("highlight.js/lib/languages/yaml"),require("highlightjs-curl/src/languages/curl")):(e.AblyUi=e.AblyUi||{},e.AblyUi.Core=e.AblyUi.Core||{},e.AblyUi.Core.Code=i(e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0]))}(this,(function(e,i,l,r,a,g,s,t,h,u,o,n,b,c,d,p,j,y,v,q,x,m,f,k,S,L){return(()=>{"use strict";var w={6187:i=>{i.exports=e},5369:e=>{e.exports=i},3769:e=>{e.exports=l},7951:e=>{e.exports=r},209:e=>{e.exports=a},6765:e=>{e.exports=g},5966:e=>{e.exports=s},2097:e=>{e.exports=t},1228:e=>{e.exports=h},7052:e=>{e.exports=u},6360:e=>{e.exports=o},8749:e=>{e.exports=n},6018:e=>{e.exports=b},4378:e=>{e.exports=c},5306:e=>{e.exports=d},1499:e=>{e.exports=p},6239:e=>{e.exports=j},2290:e=>{e.exports=y},2550:e=>{e.exports=v},1331:e=>{e.exports=q},8894:e=>{e.exports=x},4603:e=>{e.exports=m},5737:e=>{e.exports=f},3201:e=>{e.exports=k},5796:e=>{e.exports=S},3631:e=>{e.exports=L}},C={};function M(e){var i=C[e];if(void 0!==i)return i.exports;var l=C[e]={exports:{}};return w[e](l,l.exports,M),l.exports}M.n=e=>{var i=e&&e.__esModule?()=>e.default:()=>e;return M.d(i,{a:i}),i},M.d=(e,i)=>{for(var l in i)M.o(i,l)&&!M.o(e,l)&&Object.defineProperty(e,l,{enumerable:!0,get:i[l]})},M.o=(e,i)=>Object.prototype.hasOwnProperty.call(e,i);var A={};return(()=>{M.d(A,{default:()=>ee});var e=M(6187),i=M.n(e),l=M(5369),r=M.n(l),a=M(3769),g=M.n(a),s=M(7951),t=M.n(s),h=M(209),u=M.n(h),o=M(6765),n=M.n(o),b=M(2097),c=M.n(b),d=M(5966),p=M.n(d),j=M(7052),y=M.n(j),v=M(1228),q=M.n(v),x=M(2290),m=M.n(x),f=M(6360),k=M.n(f),S=M(8749),L=M.n(S),w=M(6018),C=M.n(w),T=M(4378),U=M.n(T),H=M(5737),O=M.n(H),P=M(5306),D=M.n(P),E=M(1499),J=M.n(E),N=M(6239),R=M.n(N),_=M(2550),G=M.n(_),Q=M(1331),X=M.n(Q),Y=M(4603),z=M.n(Y),B=M(8894),F=M.n(B),I=M(3201),K=M.n(I),V=M(5796),W=M.n(V),Z=M(3631),$=M.n(Z);[{label:"Text",key:"text",module:m()},{label:"JS",key:"javascript",module:U()},{label:"TS",key:"typescript",module:O()},{label:"Java",key:"java",module:C()},{label:"Ruby",key:"ruby",module:X()},{label:"Python",key:"python",module:G()},{label:"PHP",key:"php",module:R()},{label:"Shell",key:"bash",module:r()},{label:"C#",key:"cs",module:t()},{label:"CSS",key:"css",module:u()},{label:"Go",key:"go",module:k()},{label:"HTML",key:"xml",module:K()},{label:"HTTP",key:"http",module:L()},{label:"C++",key:"cpp",module:g()},{label:"Dart",key:"dart",module:n()},{label:"Swift",key:"swift",module:z()},{label:"Objective C",key:"objectivec",module:J()},{label:"Node.js",key:"javascript",module:U()},{label:"JSON",key:"json",module:D()},{label:"DOS",key:"dos",module:c()},{label:"YAML",key:"yaml",module:W()},{label:"Erlang",key:"erlang",module:y()},{label:"Elixir",key:"elixir",module:q()},{label:"Diff",key:"diff",module:p()},{label:"SQL",key:"sql",module:F()},{label:"cURL",key:"curl",module:$()},{label:"HTML",key:"html",module:K()},{label:"XML",key:"xml",module:K()}].forEach((function(e){var l=e.key,r=e.module;return i().registerLanguage(l,r)}));const ee=function(e){if(!e)throw"Missing code element";var l=e.querySelector("pre"),r=e.querySelector("code"),a=l.getAttribute("lang");if(!r||!l||!a)throw"Malformed code element";var g=function(e,l){var r=function(e){var i;switch(e||(e="text"),e.toLowerCase()){case"android":i="java";break;case".net":case"net":case"dotnet":case"csharp":case"c#":i="cs";break;case"objc":case"objective c":i="objectivec";break;case"laravel":i="php";break;case"flutter":i="dart";break;case"node.js":case"js":i="javascript";break;case"ts":i="typescript";break;case"shell":case"fh":case"sh":i="bash";break;case"https":case"http":case"txt":case"plaintext":i="text";break;case"cmd":case"bat":i="dos";break;case"yml":i="yaml";break;case"erl":i="erlang";break;case"patch":i="diff";break;case"svg":i="xml"}return i||e}(e);if("string"==typeof l&&l&&r)return i().highlight(l,{language:r}).value}(a,r.innerHTML);r.innerHTML=g}})(),A.default})()}));
1
+ !function(e,i){"object"==typeof exports&&"object"==typeof module?module.exports=i(require("highlight.js/lib/core"),require("highlight.js/lib/languages/bash"),require("highlight.js/lib/languages/cpp"),require("highlight.js/lib/languages/csharp"),require("highlight.js/lib/languages/css"),require("highlight.js/lib/languages/dart"),require("highlight.js/lib/languages/diff"),require("highlight.js/lib/languages/dos"),require("highlight.js/lib/languages/elixir"),require("highlight.js/lib/languages/erlang"),require("highlight.js/lib/languages/go"),require("highlight.js/lib/languages/http"),require("highlight.js/lib/languages/java"),require("highlight.js/lib/languages/javascript"),require("highlight.js/lib/languages/json"),require("highlight.js/lib/languages/kotlin"),require("highlight.js/lib/languages/objectivec"),require("highlight.js/lib/languages/php"),require("highlight.js/lib/languages/plaintext"),require("highlight.js/lib/languages/python"),require("highlight.js/lib/languages/ruby"),require("highlight.js/lib/languages/sql"),require("highlight.js/lib/languages/swift"),require("highlight.js/lib/languages/typescript"),require("highlight.js/lib/languages/xml"),require("highlight.js/lib/languages/yaml"),require("highlightjs-curl/src/languages/curl")):"function"==typeof define&&define.amd?define([,,,,,,,,,,,,,,,,,,,,,,,,,,],i):"object"==typeof exports?exports.AblyUi=i(require("highlight.js/lib/core"),require("highlight.js/lib/languages/bash"),require("highlight.js/lib/languages/cpp"),require("highlight.js/lib/languages/csharp"),require("highlight.js/lib/languages/css"),require("highlight.js/lib/languages/dart"),require("highlight.js/lib/languages/diff"),require("highlight.js/lib/languages/dos"),require("highlight.js/lib/languages/elixir"),require("highlight.js/lib/languages/erlang"),require("highlight.js/lib/languages/go"),require("highlight.js/lib/languages/http"),require("highlight.js/lib/languages/java"),require("highlight.js/lib/languages/javascript"),require("highlight.js/lib/languages/json"),require("highlight.js/lib/languages/kotlin"),require("highlight.js/lib/languages/objectivec"),require("highlight.js/lib/languages/php"),require("highlight.js/lib/languages/plaintext"),require("highlight.js/lib/languages/python"),require("highlight.js/lib/languages/ruby"),require("highlight.js/lib/languages/sql"),require("highlight.js/lib/languages/swift"),require("highlight.js/lib/languages/typescript"),require("highlight.js/lib/languages/xml"),require("highlight.js/lib/languages/yaml"),require("highlightjs-curl/src/languages/curl")):(e.AblyUi=e.AblyUi||{},e.AblyUi.Core=e.AblyUi.Core||{},e.AblyUi.Core.Code=i(e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0],e[void 0]))}(this,(function(e,i,l,r,a,g,s,t,h,u,o,n,b,c,d,p,j,y,q,v,x,k,m,f,S,L,w){return(()=>{"use strict";var C={6187:i=>{i.exports=e},5369:e=>{e.exports=i},3769:e=>{e.exports=l},7951:e=>{e.exports=r},209:e=>{e.exports=a},6765:e=>{e.exports=g},5966:e=>{e.exports=s},2097:e=>{e.exports=t},1228:e=>{e.exports=h},7052:e=>{e.exports=u},6360:e=>{e.exports=o},8749:e=>{e.exports=n},6018:e=>{e.exports=b},4378:e=>{e.exports=c},5306:e=>{e.exports=d},1046:e=>{e.exports=p},1499:e=>{e.exports=j},6239:e=>{e.exports=y},2290:e=>{e.exports=q},2550:e=>{e.exports=v},1331:e=>{e.exports=x},8894:e=>{e.exports=k},4603:e=>{e.exports=m},5737:e=>{e.exports=f},3201:e=>{e.exports=S},5796:e=>{e.exports=L},3631:e=>{e.exports=w}},M={};function A(e){var i=M[e];if(void 0!==i)return i.exports;var l=M[e]={exports:{}};return C[e](l,l.exports,A),l.exports}A.n=e=>{var i=e&&e.__esModule?()=>e.default:()=>e;return A.d(i,{a:i}),i},A.d=(e,i)=>{for(var l in i)A.o(i,l)&&!A.o(e,l)&&Object.defineProperty(e,l,{enumerable:!0,get:i[l]})},A.o=(e,i)=>Object.prototype.hasOwnProperty.call(e,i);var T={};return(()=>{A.d(T,{default:()=>le});var e=A(6187),i=A.n(e),l=A(5369),r=A.n(l),a=A(3769),g=A.n(a),s=A(7951),t=A.n(s),h=A(209),u=A.n(h),o=A(6765),n=A.n(o),b=A(2097),c=A.n(b),d=A(5966),p=A.n(d),j=A(7052),y=A.n(j),q=A(1228),v=A.n(q),x=A(2290),k=A.n(x),m=A(6360),f=A.n(m),S=A(8749),L=A.n(S),w=A(6018),C=A.n(w),M=A(4378),U=A.n(M),H=A(5737),O=A.n(H),P=A(5306),D=A.n(P),E=A(1499),J=A.n(E),N=A(6239),R=A.n(N),_=A(2550),G=A.n(_),K=A(1331),Q=A.n(K),X=A(4603),Y=A.n(X),z=A(1046),B=A.n(z),F=A(8894),I=A.n(F),V=A(3201),W=A.n(V),Z=A(5796),$=A.n(Z),ee=A(3631),ie=A.n(ee);[{label:"Text",key:"text",module:k()},{label:"JS",key:"javascript",module:U()},{label:"TS",key:"typescript",module:O()},{label:"Java",key:"java",module:C()},{label:"Ruby",key:"ruby",module:Q()},{label:"Python",key:"python",module:G()},{label:"PHP",key:"php",module:R()},{label:"Shell",key:"bash",module:r()},{label:"C#",key:"cs",module:t()},{label:"CSS",key:"css",module:u()},{label:"Go",key:"go",module:f()},{label:"HTML",key:"xml",module:W()},{label:"HTTP",key:"http",module:L()},{label:"C++",key:"cpp",module:g()},{label:"Dart",key:"dart",module:n()},{label:"Swift",key:"swift",module:Y()},{label:"Kotlin",key:"kotlin",module:B()},{label:"Objective C",key:"objectivec",module:J()},{label:"Node.js",key:"javascript",module:U()},{label:"JSON",key:"json",module:D()},{label:"DOS",key:"dos",module:c()},{label:"YAML",key:"yaml",module:$()},{label:"Erlang",key:"erlang",module:y()},{label:"Elixir",key:"elixir",module:v()},{label:"Diff",key:"diff",module:p()},{label:"SQL",key:"sql",module:I()},{label:"cURL",key:"curl",module:ie()},{label:"HTML",key:"html",module:W()},{label:"XML",key:"xml",module:W()}].forEach((function(e){var l=e.key,r=e.module;return i().registerLanguage(l,r)}));const le=function(e){if(!e)throw"Missing code element";var l=e.querySelector("pre"),r=e.querySelector("code"),a=l.getAttribute("lang");if(!r||!l||!a)throw"Malformed code element";var g=function(e,l){var r=function(e){var i;switch(e||(e="text"),e.toLowerCase()){case"android":i="java";break;case".net":case"net":case"dotnet":case"csharp":case"c#":i="cs";break;case"objc":case"objective c":i="objectivec";break;case"laravel":i="php";break;case"flutter":i="dart";break;case"node.js":case"js":i="javascript";break;case"ts":i="typescript";break;case"kotlin":case"kt":i="kotlin";break;case"shell":case"fh":case"sh":i="bash";break;case"https":case"http":case"txt":case"plaintext":i="text";break;case"cmd":case"bat":i="dos";break;case"yml":i="yaml";break;case"erl":i="erlang";break;case"patch":i="diff";break;case"svg":i="xml"}return i||e}(e);if("string"==typeof l&&l&&r)return i().highlight(l,{language:r}).value}(a,r.innerHTML);r.innerHTML=g}})(),T.default})()}));
package/core/Code.jsx CHANGED
@@ -1,13 +1,13 @@
1
1
  (function webpackUniversalModuleDefinition(root, factory) {
2
2
  if(typeof exports === 'object' && typeof module === 'object')
3
- module.exports = factory(require("react"), require("prop-types"), require("highlight.js/lib/core"), require("highlight.js/lib/languages/bash"), require("highlight.js/lib/languages/cpp"), require("highlight.js/lib/languages/csharp"), require("highlight.js/lib/languages/css"), require("highlight.js/lib/languages/dart"), require("highlight.js/lib/languages/dos"), require("highlight.js/lib/languages/diff"), require("highlight.js/lib/languages/erlang"), require("highlight.js/lib/languages/elixir"), require("highlight.js/lib/languages/plaintext"), require("highlight.js/lib/languages/go"), require("highlight.js/lib/languages/http"), require("highlight.js/lib/languages/java"), require("highlight.js/lib/languages/javascript"), require("highlight.js/lib/languages/typescript"), require("highlight.js/lib/languages/json"), require("highlight.js/lib/languages/objectivec"), require("highlight.js/lib/languages/php"), require("highlight.js/lib/languages/python"), require("highlight.js/lib/languages/ruby"), require("highlight.js/lib/languages/swift"), require("highlight.js/lib/languages/sql"), require("highlight.js/lib/languages/xml"), require("highlight.js/lib/languages/yaml"), require("highlightjs-curl/src/languages/curl"));
3
+ module.exports = factory(require("react"), require("prop-types"), require("highlight.js/lib/core"), require("highlight.js/lib/languages/bash"), require("highlight.js/lib/languages/cpp"), require("highlight.js/lib/languages/csharp"), require("highlight.js/lib/languages/css"), require("highlight.js/lib/languages/dart"), require("highlight.js/lib/languages/dos"), require("highlight.js/lib/languages/diff"), require("highlight.js/lib/languages/erlang"), require("highlight.js/lib/languages/elixir"), require("highlight.js/lib/languages/plaintext"), require("highlight.js/lib/languages/go"), require("highlight.js/lib/languages/http"), require("highlight.js/lib/languages/java"), require("highlight.js/lib/languages/javascript"), require("highlight.js/lib/languages/typescript"), require("highlight.js/lib/languages/json"), require("highlight.js/lib/languages/objectivec"), require("highlight.js/lib/languages/php"), require("highlight.js/lib/languages/python"), require("highlight.js/lib/languages/ruby"), require("highlight.js/lib/languages/swift"), require("highlight.js/lib/languages/kotlin"), require("highlight.js/lib/languages/sql"), require("highlight.js/lib/languages/xml"), require("highlight.js/lib/languages/yaml"), require("highlightjs-curl/src/languages/curl"));
4
4
  else if(typeof define === 'function' && define.amd)
5
- define([, , , , , , , , , , , , , , , , , , , , , , , , , , , ], factory);
5
+ define([, , , , , , , , , , , , , , , , , , , , , , , , , , , , ], factory);
6
6
  else {
7
- var a = typeof exports === 'object' ? factory(require("react"), require("prop-types"), require("highlight.js/lib/core"), require("highlight.js/lib/languages/bash"), require("highlight.js/lib/languages/cpp"), require("highlight.js/lib/languages/csharp"), require("highlight.js/lib/languages/css"), require("highlight.js/lib/languages/dart"), require("highlight.js/lib/languages/dos"), require("highlight.js/lib/languages/diff"), require("highlight.js/lib/languages/erlang"), require("highlight.js/lib/languages/elixir"), require("highlight.js/lib/languages/plaintext"), require("highlight.js/lib/languages/go"), require("highlight.js/lib/languages/http"), require("highlight.js/lib/languages/java"), require("highlight.js/lib/languages/javascript"), require("highlight.js/lib/languages/typescript"), require("highlight.js/lib/languages/json"), require("highlight.js/lib/languages/objectivec"), require("highlight.js/lib/languages/php"), require("highlight.js/lib/languages/python"), require("highlight.js/lib/languages/ruby"), require("highlight.js/lib/languages/swift"), require("highlight.js/lib/languages/sql"), require("highlight.js/lib/languages/xml"), require("highlight.js/lib/languages/yaml"), require("highlightjs-curl/src/languages/curl")) : factory(root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined]);
7
+ var a = typeof exports === 'object' ? factory(require("react"), require("prop-types"), require("highlight.js/lib/core"), require("highlight.js/lib/languages/bash"), require("highlight.js/lib/languages/cpp"), require("highlight.js/lib/languages/csharp"), require("highlight.js/lib/languages/css"), require("highlight.js/lib/languages/dart"), require("highlight.js/lib/languages/dos"), require("highlight.js/lib/languages/diff"), require("highlight.js/lib/languages/erlang"), require("highlight.js/lib/languages/elixir"), require("highlight.js/lib/languages/plaintext"), require("highlight.js/lib/languages/go"), require("highlight.js/lib/languages/http"), require("highlight.js/lib/languages/java"), require("highlight.js/lib/languages/javascript"), require("highlight.js/lib/languages/typescript"), require("highlight.js/lib/languages/json"), require("highlight.js/lib/languages/objectivec"), require("highlight.js/lib/languages/php"), require("highlight.js/lib/languages/python"), require("highlight.js/lib/languages/ruby"), require("highlight.js/lib/languages/swift"), require("highlight.js/lib/languages/kotlin"), require("highlight.js/lib/languages/sql"), require("highlight.js/lib/languages/xml"), require("highlight.js/lib/languages/yaml"), require("highlightjs-curl/src/languages/curl")) : factory(root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined], root[undefined]);
8
8
  for(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i];
9
9
  }
10
- })(this, function(__WEBPACK_EXTERNAL_MODULE__9281__, __WEBPACK_EXTERNAL_MODULE__3474__, __WEBPACK_EXTERNAL_MODULE__6187__, __WEBPACK_EXTERNAL_MODULE__5369__, __WEBPACK_EXTERNAL_MODULE__3769__, __WEBPACK_EXTERNAL_MODULE__7951__, __WEBPACK_EXTERNAL_MODULE__209__, __WEBPACK_EXTERNAL_MODULE__6765__, __WEBPACK_EXTERNAL_MODULE__2097__, __WEBPACK_EXTERNAL_MODULE__5966__, __WEBPACK_EXTERNAL_MODULE__7052__, __WEBPACK_EXTERNAL_MODULE__1228__, __WEBPACK_EXTERNAL_MODULE__2290__, __WEBPACK_EXTERNAL_MODULE__6360__, __WEBPACK_EXTERNAL_MODULE__8749__, __WEBPACK_EXTERNAL_MODULE__6018__, __WEBPACK_EXTERNAL_MODULE__4378__, __WEBPACK_EXTERNAL_MODULE__5737__, __WEBPACK_EXTERNAL_MODULE__5306__, __WEBPACK_EXTERNAL_MODULE__1499__, __WEBPACK_EXTERNAL_MODULE__6239__, __WEBPACK_EXTERNAL_MODULE__2550__, __WEBPACK_EXTERNAL_MODULE__1331__, __WEBPACK_EXTERNAL_MODULE__4603__, __WEBPACK_EXTERNAL_MODULE__8894__, __WEBPACK_EXTERNAL_MODULE__3201__, __WEBPACK_EXTERNAL_MODULE__5796__, __WEBPACK_EXTERNAL_MODULE__3631__) {
10
+ })(this, function(__WEBPACK_EXTERNAL_MODULE__9281__, __WEBPACK_EXTERNAL_MODULE__3474__, __WEBPACK_EXTERNAL_MODULE__6187__, __WEBPACK_EXTERNAL_MODULE__5369__, __WEBPACK_EXTERNAL_MODULE__3769__, __WEBPACK_EXTERNAL_MODULE__7951__, __WEBPACK_EXTERNAL_MODULE__209__, __WEBPACK_EXTERNAL_MODULE__6765__, __WEBPACK_EXTERNAL_MODULE__2097__, __WEBPACK_EXTERNAL_MODULE__5966__, __WEBPACK_EXTERNAL_MODULE__7052__, __WEBPACK_EXTERNAL_MODULE__1228__, __WEBPACK_EXTERNAL_MODULE__2290__, __WEBPACK_EXTERNAL_MODULE__6360__, __WEBPACK_EXTERNAL_MODULE__8749__, __WEBPACK_EXTERNAL_MODULE__6018__, __WEBPACK_EXTERNAL_MODULE__4378__, __WEBPACK_EXTERNAL_MODULE__5737__, __WEBPACK_EXTERNAL_MODULE__5306__, __WEBPACK_EXTERNAL_MODULE__1499__, __WEBPACK_EXTERNAL_MODULE__6239__, __WEBPACK_EXTERNAL_MODULE__2550__, __WEBPACK_EXTERNAL_MODULE__1331__, __WEBPACK_EXTERNAL_MODULE__4603__, __WEBPACK_EXTERNAL_MODULE__1046__, __WEBPACK_EXTERNAL_MODULE__8894__, __WEBPACK_EXTERNAL_MODULE__3201__, __WEBPACK_EXTERNAL_MODULE__5796__, __WEBPACK_EXTERNAL_MODULE__3631__) {
11
11
  return /******/ (() => { // webpackBootstrap
12
12
  /******/ "use strict";
13
13
  /******/ var __webpack_modules__ = ({
@@ -117,6 +117,13 @@ module.exports = __WEBPACK_EXTERNAL_MODULE__5306__;
117
117
 
118
118
  /***/ }),
119
119
 
120
+ /***/ 1046:
121
+ /***/ ((module) => {
122
+
123
+ module.exports = __WEBPACK_EXTERNAL_MODULE__1046__;
124
+
125
+ /***/ }),
126
+
120
127
  /***/ 1499:
121
128
  /***/ ((module) => {
122
129
 
@@ -341,6 +348,11 @@ var languageToHighlightKey = function languageToHighlightKey(lang) {
341
348
  id = "typescript";
342
349
  break;
343
350
 
351
+ case "kotlin":
352
+ case "kt":
353
+ id = "kotlin";
354
+ break;
355
+
344
356
  case "shell":
345
357
  case "fh":
346
358
  case "sh":
@@ -462,6 +474,9 @@ var ruby_default = /*#__PURE__*/__webpack_require__.n(ruby_);
462
474
  // EXTERNAL MODULE: external {"commonjs":"highlight.js/lib/languages/swift","commonjs2":"highlight.js/lib/languages/swift"}
463
475
  var swift_ = __webpack_require__(4603);
464
476
  var swift_default = /*#__PURE__*/__webpack_require__.n(swift_);
477
+ // EXTERNAL MODULE: external {"commonjs":"highlight.js/lib/languages/kotlin","commonjs2":"highlight.js/lib/languages/kotlin"}
478
+ var kotlin_ = __webpack_require__(1046);
479
+ var kotlin_default = /*#__PURE__*/__webpack_require__.n(kotlin_);
465
480
  // EXTERNAL MODULE: external {"commonjs":"highlight.js/lib/languages/sql","commonjs2":"highlight.js/lib/languages/sql"}
466
481
  var sql_ = __webpack_require__(8894);
467
482
  var sql_default = /*#__PURE__*/__webpack_require__.n(sql_);
@@ -500,6 +515,7 @@ var curl_default = /*#__PURE__*/__webpack_require__.n(curl_);
500
515
 
501
516
 
502
517
 
518
+
503
519
 
504
520
 
505
521
  var registry = [{
@@ -566,6 +582,10 @@ var registry = [{
566
582
  label: "Swift",
567
583
  key: "swift",
568
584
  module: (swift_default())
585
+ }, {
586
+ label: "Kotlin",
587
+ key: "kotlin",
588
+ module: (kotlin_default())
569
589
  }, {
570
590
  label: "Objective C",
571
591
  key: "objectivec",
@@ -0,0 +1 @@
1
+ !function(e,o){"object"==typeof exports&&"object"==typeof module?module.exports=o():"function"==typeof define&&define.amd?define([],o):"object"==typeof exports?exports.AblyUi=o():(e.AblyUi=e.AblyUi||{},e.AblyUi.Core=e.AblyUi.Core||{},e.AblyUi.Core.DropdownMenu=o())}(this,(function(){return{}.default}));
@@ -0,0 +1,313 @@
1
+ (function webpackUniversalModuleDefinition(root, factory) {
2
+ if(typeof exports === 'object' && typeof module === 'object')
3
+ module.exports = factory(require("react"), require("prop-types"));
4
+ else if(typeof define === 'function' && define.amd)
5
+ define([, ], factory);
6
+ else {
7
+ var a = typeof exports === 'object' ? factory(require("react"), require("prop-types")) : factory(root[undefined], root[undefined]);
8
+ for(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i];
9
+ }
10
+ })(this, function(__WEBPACK_EXTERNAL_MODULE__9281__, __WEBPACK_EXTERNAL_MODULE__3474__) {
11
+ return /******/ (() => { // webpackBootstrap
12
+ /******/ "use strict";
13
+ /******/ var __webpack_modules__ = ({
14
+
15
+ /***/ 9008:
16
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
17
+
18
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
19
+ /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
20
+ /* harmony export */ });
21
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9281);
22
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
23
+ /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(3474);
24
+ /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_1__);
25
+ var _excluded = ["name", "size", "color", "additionalCSS"];
26
+
27
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
28
+
29
+ function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
30
+
31
+ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
32
+
33
+
34
+
35
+
36
+ var Icon = function Icon(_ref) {
37
+ var name = _ref.name,
38
+ _ref$size = _ref.size,
39
+ size = _ref$size === void 0 ? "0.75rem" : _ref$size,
40
+ _ref$color = _ref.color,
41
+ color = _ref$color === void 0 ? "" : _ref$color,
42
+ _ref$additionalCSS = _ref.additionalCSS,
43
+ additionalCSS = _ref$additionalCSS === void 0 ? "" : _ref$additionalCSS,
44
+ additionalAttributes = _objectWithoutProperties(_ref, _excluded);
45
+
46
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", _extends({
47
+ className: "".concat(color, " ").concat(additionalCSS),
48
+ style: {
49
+ width: size,
50
+ height: size
51
+ }
52
+ }, additionalAttributes), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("use", {
53
+ xlinkHref: "#sprite-".concat(name)
54
+ }));
55
+ };
56
+
57
+ Icon.propTypes = {
58
+ name: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string.isRequired),
59
+ size: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string),
60
+ color: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string),
61
+ additionalCSS: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string)
62
+ };
63
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Icon);
64
+
65
+ /***/ }),
66
+
67
+ /***/ 3474:
68
+ /***/ ((module) => {
69
+
70
+ module.exports = __WEBPACK_EXTERNAL_MODULE__3474__;
71
+
72
+ /***/ }),
73
+
74
+ /***/ 9281:
75
+ /***/ ((module) => {
76
+
77
+ module.exports = __WEBPACK_EXTERNAL_MODULE__9281__;
78
+
79
+ /***/ })
80
+
81
+ /******/ });
82
+ /************************************************************************/
83
+ /******/ // The module cache
84
+ /******/ var __webpack_module_cache__ = {};
85
+ /******/
86
+ /******/ // The require function
87
+ /******/ function __webpack_require__(moduleId) {
88
+ /******/ // Check if module is in cache
89
+ /******/ var cachedModule = __webpack_module_cache__[moduleId];
90
+ /******/ if (cachedModule !== undefined) {
91
+ /******/ return cachedModule.exports;
92
+ /******/ }
93
+ /******/ // Create a new module (and put it into the cache)
94
+ /******/ var module = __webpack_module_cache__[moduleId] = {
95
+ /******/ // no module.id needed
96
+ /******/ // no module.loaded needed
97
+ /******/ exports: {}
98
+ /******/ };
99
+ /******/
100
+ /******/ // Execute the module function
101
+ /******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
102
+ /******/
103
+ /******/ // Return the exports of the module
104
+ /******/ return module.exports;
105
+ /******/ }
106
+ /******/
107
+ /************************************************************************/
108
+ /******/ /* webpack/runtime/compat get default export */
109
+ /******/ (() => {
110
+ /******/ // getDefaultExport function for compatibility with non-harmony modules
111
+ /******/ __webpack_require__.n = (module) => {
112
+ /******/ var getter = module && module.__esModule ?
113
+ /******/ () => (module['default']) :
114
+ /******/ () => (module);
115
+ /******/ __webpack_require__.d(getter, { a: getter });
116
+ /******/ return getter;
117
+ /******/ };
118
+ /******/ })();
119
+ /******/
120
+ /******/ /* webpack/runtime/define property getters */
121
+ /******/ (() => {
122
+ /******/ // define getter functions for harmony exports
123
+ /******/ __webpack_require__.d = (exports, definition) => {
124
+ /******/ for(var key in definition) {
125
+ /******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
126
+ /******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
127
+ /******/ }
128
+ /******/ }
129
+ /******/ };
130
+ /******/ })();
131
+ /******/
132
+ /******/ /* webpack/runtime/hasOwnProperty shorthand */
133
+ /******/ (() => {
134
+ /******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
135
+ /******/ })();
136
+ /******/
137
+ /******/ /* webpack/runtime/make namespace object */
138
+ /******/ (() => {
139
+ /******/ // define __esModule on exports
140
+ /******/ __webpack_require__.r = (exports) => {
141
+ /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
142
+ /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
143
+ /******/ }
144
+ /******/ Object.defineProperty(exports, '__esModule', { value: true });
145
+ /******/ };
146
+ /******/ })();
147
+ /******/
148
+ /************************************************************************/
149
+ var __webpack_exports__ = {};
150
+ // This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.
151
+ (() => {
152
+ __webpack_require__.r(__webpack_exports__);
153
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
154
+ /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
155
+ /* harmony export */ });
156
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9281);
157
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
158
+ /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(3474);
159
+ /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_1__);
160
+ /* harmony import */ var _Icon_component_jsx__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(9008);
161
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
162
+
163
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
164
+
165
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
166
+
167
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
168
+
169
+ function _iterableToArrayLimit(arr, i) { var _i = arr && (typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]); if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
170
+
171
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
172
+
173
+
174
+
175
+
176
+ var DropdownMenuContext = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)();
177
+
178
+ var DropdownMenu = function DropdownMenu(_ref) {
179
+ var children = _ref.children;
180
+
181
+ var _useState = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false),
182
+ _useState2 = _slicedToArray(_useState, 2),
183
+ isOpen = _useState2[0],
184
+ setOpen = _useState2[1];
185
+
186
+ var ref = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);
187
+ (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {
188
+ var clickHandler = function clickHandler(e) {
189
+ var _ref$current;
190
+
191
+ if (ref !== null && ref !== void 0 && (_ref$current = ref.current) !== null && _ref$current !== void 0 && _ref$current.contains(e.target)) return;
192
+ setOpen(false);
193
+ };
194
+
195
+ document.addEventListener("click", clickHandler);
196
+ return function () {
197
+ document.removeEventListener("click", clickHandler);
198
+ };
199
+ }, []);
200
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(DropdownMenuContext.Provider, {
201
+ value: {
202
+ isOpen: isOpen,
203
+ setOpen: setOpen
204
+ }
205
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
206
+ id: "dropdown-menu",
207
+ className: "relative",
208
+ ref: ref
209
+ }, children));
210
+ };
211
+
212
+ DropdownMenu.propTypes = {
213
+ children: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().node)
214
+ };
215
+
216
+ var Trigger = function Trigger(_ref2) {
217
+ var children = _ref2.children,
218
+ _ref2$additionalTrigg = _ref2.additionalTriggerCSS,
219
+ additionalTriggerCSS = _ref2$additionalTrigg === void 0 ? "" : _ref2$additionalTrigg;
220
+
221
+ var _useContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(DropdownMenuContext),
222
+ isOpen = _useContext.isOpen,
223
+ setOpen = _useContext.setOpen;
224
+
225
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("button", {
226
+ id: "menu-trigger",
227
+ onClick: function onClick() {
228
+ return setOpen(!isOpen);
229
+ },
230
+ className: "".concat(additionalTriggerCSS, " flex items-center p-8 ml-8 group hover:text-gui-hover hover:bg-light-grey active:text-gui-active focus:text-gui-focus focus:outline-none rounded-lg")
231
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
232
+ className: "leading-normal"
233
+ }, children), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_Icon_component_jsx__WEBPACK_IMPORTED_MODULE_2__.default, {
234
+ name: "icon-gui-disclosure-arrow",
235
+ color: "text-cool-black",
236
+ size: "1.25rem",
237
+ additionalCSS: "transform rotate-90 group-hover:text-gui-hover group-active:text-gui-active group-focus:text-gui-focus"
238
+ }));
239
+ };
240
+
241
+ Trigger.propTypes = {
242
+ children: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().node),
243
+ additionalTriggerCSS: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string)
244
+ };
245
+
246
+ var Content = function Content(_ref3) {
247
+ var children = _ref3.children,
248
+ _ref3$anchorPosition = _ref3.anchorPosition,
249
+ anchorPosition = _ref3$anchorPosition === void 0 ? "right" : _ref3$anchorPosition,
250
+ additionalContentCSS = _ref3.additionalContentCSS;
251
+
252
+ var _useContext2 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(DropdownMenuContext),
253
+ isOpen = _useContext2.isOpen;
254
+
255
+ if (!isOpen) {
256
+ return null;
257
+ }
258
+
259
+ var anchorPositionClasses = anchorPosition === "right" ? "right-0" : "left-0";
260
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
261
+ id: "menu-content",
262
+ className: "".concat(additionalContentCSS, " absolute p-8 z-10 border border-mid-grey bg-white rounded shadow-container ").concat(anchorPositionClasses),
263
+ style: {
264
+ minWidth: 275,
265
+ top: 44
266
+ }
267
+ }, children);
268
+ };
269
+
270
+ Content.propTypes = {
271
+ children: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().node),
272
+ anchorPosition: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string),
273
+ additionalContentCSS: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string)
274
+ };
275
+
276
+ var Link = function Link(_ref4) {
277
+ var url = _ref4.url,
278
+ title = _ref4.title,
279
+ subtitle = _ref4.subtitle,
280
+ iconName = _ref4.iconName,
281
+ children = _ref4.children;
282
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
283
+ href: url,
284
+ className: "menu-link group block p-8 hover:bg-light-grey hover:text-cool-black rounded"
285
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
286
+ className: "mb-4"
287
+ }, title, iconName ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_Icon_component_jsx__WEBPACK_IMPORTED_MODULE_2__.default, {
288
+ name: iconName,
289
+ size: "1rem",
290
+ color: "text-cool-black",
291
+ additionalCSS: "align-middle ml-8 relative -top-1 -left-4"
292
+ }) : null), subtitle ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
293
+ className: "text-p3 mb-16 text-dark-grey"
294
+ }, subtitle) : null, children);
295
+ };
296
+
297
+ Link.propTypes = {
298
+ url: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string),
299
+ title: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string),
300
+ subtitle: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string),
301
+ iconName: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string),
302
+ children: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().node)
303
+ };
304
+ DropdownMenu.Trigger = Trigger;
305
+ DropdownMenu.Content = Content;
306
+ DropdownMenu.Link = Link;
307
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (DropdownMenu);
308
+ })();
309
+
310
+ /******/ return __webpack_exports__;
311
+ /******/ })()
312
+ ;
313
+ });