@dugararchit/flex-layout 13.0.0-dugararchit

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 (226) hide show
  1. package/README.md +7 -0
  2. package/_private-utils/angular-flex-layout-_private-utils.d.ts +5 -0
  3. package/_private-utils/auto-prefixer.d.ts +24 -0
  4. package/_private-utils/index.d.ts +10 -0
  5. package/_private-utils/layout-validator.d.ts +32 -0
  6. package/_private-utils/object-extend.d.ts +15 -0
  7. package/_private-utils/package.json +10 -0
  8. package/_private-utils/testing/angular-flex-layout-_private-utils-testing.d.ts +5 -0
  9. package/_private-utils/testing/custom-matchers.d.ts +65 -0
  10. package/_private-utils/testing/dom-tools.d.ts +47 -0
  11. package/_private-utils/testing/helpers.d.ts +24 -0
  12. package/_private-utils/testing/index.d.ts +10 -0
  13. package/_private-utils/testing/package.json +10 -0
  14. package/angular-flex-layout-13.0.0-beta.38.tgz +0 -0
  15. package/angular-flex-layout.d.ts +5 -0
  16. package/core/README.md +25 -0
  17. package/core/add-alias.d.ts +14 -0
  18. package/core/angular-flex-layout-core.d.ts +5 -0
  19. package/core/base/base2.d.ts +60 -0
  20. package/core/base/index.d.ts +8 -0
  21. package/core/basis-validator/basis-validator.d.ts +13 -0
  22. package/core/breakpoints/break-point-registry.d.ts +42 -0
  23. package/core/breakpoints/break-point.d.ts +14 -0
  24. package/core/breakpoints/break-points-token.d.ts +14 -0
  25. package/core/breakpoints/breakpoint-tools.d.ts +19 -0
  26. package/core/breakpoints/data/break-points.d.ts +12 -0
  27. package/core/breakpoints/data/orientation-break-points.d.ts +23 -0
  28. package/core/breakpoints/index.d.ts +12 -0
  29. package/core/browser-provider.d.ts +24 -0
  30. package/core/match-media/index.d.ts +9 -0
  31. package/core/match-media/match-media.d.ts +59 -0
  32. package/core/match-media/mock/mock-match-media.d.ts +92 -0
  33. package/core/media-change.d.ts +30 -0
  34. package/core/media-marshaller/media-marshaller.d.ts +123 -0
  35. package/core/media-marshaller/print-hook.d.ts +95 -0
  36. package/core/media-observer/index.d.ts +8 -0
  37. package/core/media-observer/media-observer.d.ts +115 -0
  38. package/core/media-trigger/index.d.ts +8 -0
  39. package/core/media-trigger/media-trigger.d.ts +73 -0
  40. package/core/module.d.ts +11 -0
  41. package/core/multiply/multiplier.d.ts +5 -0
  42. package/core/package.json +10 -0
  43. package/core/public-api.d.ts +25 -0
  44. package/core/sass/_layout-bp.scss +76 -0
  45. package/core/style-builder/style-builder.d.ts +21 -0
  46. package/core/style-utils/style-utils.d.ts +53 -0
  47. package/core/stylesheet-map/index.d.ts +8 -0
  48. package/core/stylesheet-map/stylesheet-map.d.ts +24 -0
  49. package/core/tokens/breakpoint-token.d.ts +10 -0
  50. package/core/tokens/index.d.ts +10 -0
  51. package/core/tokens/library-config.d.ts +26 -0
  52. package/core/tokens/server-token.d.ts +15 -0
  53. package/core/utils/array.d.ts +9 -0
  54. package/core/utils/index.d.ts +9 -0
  55. package/core/utils/sort.d.ts +15 -0
  56. package/esm2020/_private-utils/angular-flex-layout-_private-utils.mjs +5 -0
  57. package/esm2020/_private-utils/auto-prefixer.mjs +65 -0
  58. package/esm2020/_private-utils/index.mjs +11 -0
  59. package/esm2020/_private-utils/layout-validator.mjs +83 -0
  60. package/esm2020/_private-utils/object-extend.mjs +30 -0
  61. package/esm2020/_private-utils/testing/angular-flex-layout-_private-utils-testing.mjs +5 -0
  62. package/esm2020/_private-utils/testing/custom-matchers.mjs +201 -0
  63. package/esm2020/_private-utils/testing/dom-tools.mjs +101 -0
  64. package/esm2020/_private-utils/testing/helpers.mjs +43 -0
  65. package/esm2020/_private-utils/testing/index.mjs +11 -0
  66. package/esm2020/angular-flex-layout.mjs +5 -0
  67. package/esm2020/core/add-alias.mjs +23 -0
  68. package/esm2020/core/angular-flex-layout-core.mjs +5 -0
  69. package/esm2020/core/base/base2.mjs +131 -0
  70. package/esm2020/core/base/index.mjs +9 -0
  71. package/esm2020/core/basis-validator/basis-validator.mjs +48 -0
  72. package/esm2020/core/breakpoints/break-point-registry.mjs +76 -0
  73. package/esm2020/core/breakpoints/break-point.mjs +2 -0
  74. package/esm2020/core/breakpoints/break-points-token.mjs +30 -0
  75. package/esm2020/core/breakpoints/breakpoint-tools.mjs +53 -0
  76. package/esm2020/core/breakpoints/data/break-points.mjs +78 -0
  77. package/esm2020/core/breakpoints/data/orientation-break-points.mjs +40 -0
  78. package/esm2020/core/breakpoints/index.mjs +13 -0
  79. package/esm2020/core/browser-provider.mjs +41 -0
  80. package/esm2020/core/match-media/index.mjs +10 -0
  81. package/esm2020/core/match-media/match-media.mjs +186 -0
  82. package/esm2020/core/match-media/mock/mock-match-media.mjs +224 -0
  83. package/esm2020/core/media-change.mjs +25 -0
  84. package/esm2020/core/media-marshaller/media-marshaller.mjs +317 -0
  85. package/esm2020/core/media-marshaller/print-hook.mjs +265 -0
  86. package/esm2020/core/media-observer/index.mjs +9 -0
  87. package/esm2020/core/media-observer/media-observer.mjs +195 -0
  88. package/esm2020/core/media-trigger/index.mjs +9 -0
  89. package/esm2020/core/media-trigger/media-trigger.mjs +188 -0
  90. package/esm2020/core/module.mjs +27 -0
  91. package/esm2020/core/multiply/multiplier.mjs +16 -0
  92. package/esm2020/core/public-api.mjs +26 -0
  93. package/esm2020/core/style-builder/style-builder.mjs +15 -0
  94. package/esm2020/core/style-utils/style-utils.mjs +174 -0
  95. package/esm2020/core/stylesheet-map/index.mjs +9 -0
  96. package/esm2020/core/stylesheet-map/stylesheet-map.mjs +59 -0
  97. package/esm2020/core/tokens/breakpoint-token.mjs +13 -0
  98. package/esm2020/core/tokens/index.mjs +11 -0
  99. package/esm2020/core/tokens/library-config.mjs +30 -0
  100. package/esm2020/core/tokens/server-token.mjs +19 -0
  101. package/esm2020/core/utils/array.mjs +12 -0
  102. package/esm2020/core/utils/index.mjs +10 -0
  103. package/esm2020/core/utils/sort.mjs +20 -0
  104. package/esm2020/extended/angular-flex-layout-extended.mjs +5 -0
  105. package/esm2020/extended/class/class.mjs +88 -0
  106. package/esm2020/extended/img-src/img-src.mjs +106 -0
  107. package/esm2020/extended/module.mjs +45 -0
  108. package/esm2020/extended/public-api.mjs +13 -0
  109. package/esm2020/extended/show-hide/show-hide.mjs +176 -0
  110. package/esm2020/extended/style/style-transforms.mjs +76 -0
  111. package/esm2020/extended/style/style.mjs +130 -0
  112. package/esm2020/flex/angular-flex-layout-flex.mjs +5 -0
  113. package/esm2020/flex/flex/flex.mjs +291 -0
  114. package/esm2020/flex/flex-align/flex-align.mjs +80 -0
  115. package/esm2020/flex/flex-fill/flex-fill.mjs +50 -0
  116. package/esm2020/flex/flex-offset/flex-offset.mjs +121 -0
  117. package/esm2020/flex/flex-order/flex-order.mjs +66 -0
  118. package/esm2020/flex/layout/layout.mjs +86 -0
  119. package/esm2020/flex/layout-align/layout-align.mjs +194 -0
  120. package/esm2020/flex/layout-gap/layout-gap.mjs +282 -0
  121. package/esm2020/flex/module.mjs +62 -0
  122. package/esm2020/flex/public-api.mjs +17 -0
  123. package/esm2020/grid/align-columns/align-columns.mjs +137 -0
  124. package/esm2020/grid/align-rows/align-rows.mjs +119 -0
  125. package/esm2020/grid/angular-flex-layout-grid.mjs +5 -0
  126. package/esm2020/grid/area/area.mjs +67 -0
  127. package/esm2020/grid/areas/areas.mjs +86 -0
  128. package/esm2020/grid/auto/auto.mjs +89 -0
  129. package/esm2020/grid/column/column.mjs +67 -0
  130. package/esm2020/grid/columns/columns.mjs +96 -0
  131. package/esm2020/grid/gap/gap.mjs +85 -0
  132. package/esm2020/grid/grid-align/grid-align.mjs +111 -0
  133. package/esm2020/grid/module.mjs +73 -0
  134. package/esm2020/grid/public-api.mjs +20 -0
  135. package/esm2020/grid/row/row.mjs +67 -0
  136. package/esm2020/grid/rows/rows.mjs +96 -0
  137. package/esm2020/module.mjs +64 -0
  138. package/esm2020/public-api.mjs +20 -0
  139. package/esm2020/server/angular-flex-layout-server.mjs +5 -0
  140. package/esm2020/server/module.mjs +22 -0
  141. package/esm2020/server/public-api.mjs +10 -0
  142. package/esm2020/server/server-match-media.mjs +151 -0
  143. package/esm2020/server/server-provider.mjs +140 -0
  144. package/esm2020/version.mjs +11 -0
  145. package/extended/README.md +18 -0
  146. package/extended/angular-flex-layout-extended.d.ts +5 -0
  147. package/extended/class/class.d.ts +38 -0
  148. package/extended/img-src/img-src.d.ts +51 -0
  149. package/extended/module.d.ts +16 -0
  150. package/extended/package.json +10 -0
  151. package/extended/public-api.d.ts +12 -0
  152. package/extended/show-hide/show-hide.d.ts +61 -0
  153. package/extended/style/style-transforms.d.ts +36 -0
  154. package/extended/style/style.d.ts +45 -0
  155. package/fesm2015/angular-flex-layout-_private-utils-testing.mjs +357 -0
  156. package/fesm2015/angular-flex-layout-_private-utils-testing.mjs.map +1 -0
  157. package/fesm2015/angular-flex-layout-_private-utils.mjs +193 -0
  158. package/fesm2015/angular-flex-layout-_private-utils.mjs.map +1 -0
  159. package/fesm2015/angular-flex-layout-core.mjs +2331 -0
  160. package/fesm2015/angular-flex-layout-core.mjs.map +1 -0
  161. package/fesm2015/angular-flex-layout-extended.mjs +621 -0
  162. package/fesm2015/angular-flex-layout-extended.mjs.map +1 -0
  163. package/fesm2015/angular-flex-layout-flex.mjs +1206 -0
  164. package/fesm2015/angular-flex-layout-flex.mjs.map +1 -0
  165. package/fesm2015/angular-flex-layout-grid.mjs +1047 -0
  166. package/fesm2015/angular-flex-layout-grid.mjs.map +1 -0
  167. package/fesm2015/angular-flex-layout-server.mjs +324 -0
  168. package/fesm2015/angular-flex-layout-server.mjs.map +1 -0
  169. package/fesm2015/angular-flex-layout.mjs +94 -0
  170. package/fesm2015/angular-flex-layout.mjs.map +1 -0
  171. package/fesm2020/angular-flex-layout-_private-utils-testing.mjs +357 -0
  172. package/fesm2020/angular-flex-layout-_private-utils-testing.mjs.map +1 -0
  173. package/fesm2020/angular-flex-layout-_private-utils.mjs +192 -0
  174. package/fesm2020/angular-flex-layout-_private-utils.mjs.map +1 -0
  175. package/fesm2020/angular-flex-layout-core.mjs +2304 -0
  176. package/fesm2020/angular-flex-layout-core.mjs.map +1 -0
  177. package/fesm2020/angular-flex-layout-extended.mjs +612 -0
  178. package/fesm2020/angular-flex-layout-extended.mjs.map +1 -0
  179. package/fesm2020/angular-flex-layout-flex.mjs +1198 -0
  180. package/fesm2020/angular-flex-layout-flex.mjs.map +1 -0
  181. package/fesm2020/angular-flex-layout-grid.mjs +1047 -0
  182. package/fesm2020/angular-flex-layout-grid.mjs.map +1 -0
  183. package/fesm2020/angular-flex-layout-server.mjs +322 -0
  184. package/fesm2020/angular-flex-layout-server.mjs.map +1 -0
  185. package/fesm2020/angular-flex-layout.mjs +92 -0
  186. package/fesm2020/angular-flex-layout.mjs.map +1 -0
  187. package/flex/README.md +19 -0
  188. package/flex/angular-flex-layout-flex.d.ts +5 -0
  189. package/flex/flex/flex.d.ts +59 -0
  190. package/flex/flex-align/flex-align.d.ts +32 -0
  191. package/flex/flex-fill/flex-fill.d.ts +33 -0
  192. package/flex/flex-offset/flex-offset.d.ts +44 -0
  193. package/flex/flex-order/flex-order.d.ts +34 -0
  194. package/flex/layout/layout.d.ts +43 -0
  195. package/flex/layout-align/layout-align.d.ts +49 -0
  196. package/flex/layout-gap/layout-gap.d.ts +65 -0
  197. package/flex/module.d.ts +21 -0
  198. package/flex/package.json +10 -0
  199. package/flex/public-api.d.ts +16 -0
  200. package/grid/README.md +19 -0
  201. package/grid/align-columns/align-columns.d.ts +39 -0
  202. package/grid/align-rows/align-rows.d.ts +39 -0
  203. package/grid/angular-flex-layout-grid.d.ts +5 -0
  204. package/grid/area/area.d.ts +34 -0
  205. package/grid/areas/areas.d.ts +41 -0
  206. package/grid/auto/auto.d.ts +41 -0
  207. package/grid/column/column.d.ts +34 -0
  208. package/grid/columns/columns.d.ts +43 -0
  209. package/grid/gap/gap.d.ts +42 -0
  210. package/grid/grid-align/grid-align.d.ts +37 -0
  211. package/grid/module.d.ts +23 -0
  212. package/grid/package.json +10 -0
  213. package/grid/public-api.d.ts +19 -0
  214. package/grid/row/row.d.ts +34 -0
  215. package/grid/rows/rows.d.ts +43 -0
  216. package/module.d.ts +30 -0
  217. package/package.json +100 -0
  218. package/public-api.d.ts +18 -0
  219. package/server/README.md +23 -0
  220. package/server/angular-flex-layout-server.d.ts +5 -0
  221. package/server/module.d.ts +6 -0
  222. package/server/package.json +10 -0
  223. package/server/public-api.d.ts +9 -0
  224. package/server/server-match-media.d.ts +61 -0
  225. package/server/server-provider.d.ts +44 -0
  226. package/version.d.ts +10 -0
@@ -0,0 +1,48 @@
1
+ /**
2
+ * @license
3
+ * Copyright Google LLC All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.io/license
7
+ */
8
+ /**
9
+ * The flex API permits 3 or 1 parts of the value:
10
+ * - `flex-grow flex-shrink flex-basis`, or
11
+ * - `flex-basis`
12
+ */
13
+ export function validateBasis(basis, grow = '1', shrink = '1') {
14
+ let parts = [grow, shrink, basis];
15
+ let j = basis.indexOf('calc');
16
+ if (j > 0) {
17
+ parts[2] = _validateCalcValue(basis.substring(j).trim());
18
+ let matches = basis.substr(0, j).trim().split(' ');
19
+ if (matches.length == 2) {
20
+ parts[0] = matches[0];
21
+ parts[1] = matches[1];
22
+ }
23
+ }
24
+ else if (j == 0) {
25
+ parts[2] = _validateCalcValue(basis.trim());
26
+ }
27
+ else {
28
+ let matches = basis.split(' ');
29
+ parts = (matches.length === 3) ? matches : [
30
+ grow, shrink, basis
31
+ ];
32
+ }
33
+ return parts;
34
+ }
35
+ /**
36
+ * Calc expressions require whitespace before & after any expression operators
37
+ * This is a simple, crude whitespace padding solution.
38
+ * - '3 3 calc(15em + 20px)'
39
+ * - calc(100% / 7 * 2)
40
+ * - 'calc(15em + 20px)'
41
+ * - 'calc(15em+20px)'
42
+ * - '37px'
43
+ * = '43%'
44
+ */
45
+ function _validateCalcValue(calc) {
46
+ return calc.replace(/[\s]/g, '').replace(/[\/\*\+\-]/g, ' $& ');
47
+ }
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzaXMtdmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbGlicy9mbGV4LWxheW91dC9jb3JlL2Jhc2lzLXZhbGlkYXRvci9iYXNpcy12YWxpZGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUY7Ozs7RUFJRTtBQUNILE1BQU0sVUFBVSxhQUFhLENBQUMsS0FBYSxFQUFFLElBQUksR0FBRyxHQUFHLEVBQUUsTUFBTSxHQUFHLEdBQUc7SUFDbkUsSUFBSSxLQUFLLEdBQUcsQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBRWxDLElBQUksQ0FBQyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDOUIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFO1FBQ1QsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUN6RCxJQUFJLE9BQU8sR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDbkQsSUFBSSxPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMsRUFBRTtZQUN2QixLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3RCLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDdkI7S0FDRjtTQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUNqQixLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsa0JBQWtCLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7S0FDN0M7U0FBTTtRQUNMLElBQUksT0FBTyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDL0IsS0FBSyxHQUFHLENBQUMsT0FBTyxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztZQUNyQyxJQUFJLEVBQUUsTUFBTSxFQUFFLEtBQUs7U0FDcEIsQ0FBQztLQUNQO0lBRUQsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDO0FBR0Q7Ozs7Ozs7OztHQVNHO0FBQ0gsU0FBUyxrQkFBa0IsQ0FBQyxJQUFZO0lBQ3RDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxNQUFNLENBQUMsQ0FBQztBQUNsRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbiAvKipcbiAqIFRoZSBmbGV4IEFQSSBwZXJtaXRzIDMgb3IgMSBwYXJ0cyBvZiB0aGUgdmFsdWU6XG4gKiAgICAtIGBmbGV4LWdyb3cgZmxleC1zaHJpbmsgZmxleC1iYXNpc2AsIG9yXG4gKiAgICAtIGBmbGV4LWJhc2lzYFxuICovXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVCYXNpcyhiYXNpczogc3RyaW5nLCBncm93ID0gJzEnLCBzaHJpbmsgPSAnMScpOiBzdHJpbmdbXSB7XG4gIGxldCBwYXJ0cyA9IFtncm93LCBzaHJpbmssIGJhc2lzXTtcblxuICBsZXQgaiA9IGJhc2lzLmluZGV4T2YoJ2NhbGMnKTtcbiAgaWYgKGogPiAwKSB7XG4gICAgcGFydHNbMl0gPSBfdmFsaWRhdGVDYWxjVmFsdWUoYmFzaXMuc3Vic3RyaW5nKGopLnRyaW0oKSk7XG4gICAgbGV0IG1hdGNoZXMgPSBiYXNpcy5zdWJzdHIoMCwgaikudHJpbSgpLnNwbGl0KCcgJyk7XG4gICAgaWYgKG1hdGNoZXMubGVuZ3RoID09IDIpIHtcbiAgICAgIHBhcnRzWzBdID0gbWF0Y2hlc1swXTtcbiAgICAgIHBhcnRzWzFdID0gbWF0Y2hlc1sxXTtcbiAgICB9XG4gIH0gZWxzZSBpZiAoaiA9PSAwKSB7XG4gICAgcGFydHNbMl0gPSBfdmFsaWRhdGVDYWxjVmFsdWUoYmFzaXMudHJpbSgpKTtcbiAgfSBlbHNlIHtcbiAgICBsZXQgbWF0Y2hlcyA9IGJhc2lzLnNwbGl0KCcgJyk7XG4gICAgcGFydHMgPSAobWF0Y2hlcy5sZW5ndGggPT09IDMpID8gbWF0Y2hlcyA6IFtcbiAgICAgICAgICBncm93LCBzaHJpbmssIGJhc2lzXG4gICAgICAgIF07XG4gIH1cblxuICByZXR1cm4gcGFydHM7XG59XG5cblxuLyoqXG4gKiBDYWxjIGV4cHJlc3Npb25zIHJlcXVpcmUgd2hpdGVzcGFjZSBiZWZvcmUgJiBhZnRlciBhbnkgZXhwcmVzc2lvbiBvcGVyYXRvcnNcbiAqIFRoaXMgaXMgYSBzaW1wbGUsIGNydWRlIHdoaXRlc3BhY2UgcGFkZGluZyBzb2x1dGlvbi5cbiAqICAgLSAnMyAzIGNhbGMoMTVlbSArIDIwcHgpJ1xuICogICAtIGNhbGMoMTAwJSAvIDcgKiAyKVxuICogICAtICdjYWxjKDE1ZW0gKyAyMHB4KSdcbiAqICAgLSAnY2FsYygxNWVtKzIwcHgpJ1xuICogICAtICczN3B4J1xuICogICA9ICc0MyUnXG4gKi9cbmZ1bmN0aW9uIF92YWxpZGF0ZUNhbGNWYWx1ZShjYWxjOiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gY2FsYy5yZXBsYWNlKC9bXFxzXS9nLCAnJykucmVwbGFjZSgvW1xcL1xcKlxcK1xcLV0vZywgJyAkJiAnKTtcbn1cbiJdfQ==
@@ -0,0 +1,76 @@
1
+ /**
2
+ * @license
3
+ * Copyright Google LLC All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.io/license
7
+ */
8
+ import { Injectable, Inject } from '@angular/core';
9
+ import { BREAKPOINTS } from './break-points-token';
10
+ import { sortAscendingPriority } from '../utils/sort';
11
+ import * as i0 from "@angular/core";
12
+ /**
13
+ * Registry of 1..n MediaQuery breakpoint ranges
14
+ * This is published as a provider and may be overridden from custom, application-specific ranges
15
+ *
16
+ */
17
+ export class BreakPointRegistry {
18
+ constructor(list) {
19
+ /**
20
+ * Memoized BreakPoint Lookups
21
+ */
22
+ this.findByMap = new Map();
23
+ this.items = [...list].sort(sortAscendingPriority);
24
+ }
25
+ /**
26
+ * Search breakpoints by alias (e.g. gt-xs)
27
+ */
28
+ findByAlias(alias) {
29
+ return !alias ? null : this.findWithPredicate(alias, (bp) => bp.alias === alias);
30
+ }
31
+ findByQuery(query) {
32
+ return this.findWithPredicate(query, (bp) => bp.mediaQuery === query);
33
+ }
34
+ /**
35
+ * Get all the breakpoints whose ranges could overlapping `normal` ranges;
36
+ * e.g. gt-sm overlaps md, lg, and xl
37
+ */
38
+ get overlappings() {
39
+ return this.items.filter(it => it.overlapping);
40
+ }
41
+ /**
42
+ * Get list of all registered (non-empty) breakpoint aliases
43
+ */
44
+ get aliases() {
45
+ return this.items.map(it => it.alias);
46
+ }
47
+ /**
48
+ * Aliases are mapped to properties using suffixes
49
+ * e.g. 'gt-sm' for property 'layout' uses suffix 'GtSm'
50
+ * for property layoutGtSM.
51
+ */
52
+ get suffixes() {
53
+ return this.items.map(it => it?.suffix ?? '');
54
+ }
55
+ /**
56
+ * Memoized lookup using custom predicate function
57
+ */
58
+ findWithPredicate(key, searchFn) {
59
+ let response = this.findByMap.get(key);
60
+ if (!response) {
61
+ response = this.items.find(searchFn) ?? null;
62
+ this.findByMap.set(key, response);
63
+ }
64
+ return response ?? null;
65
+ }
66
+ }
67
+ BreakPointRegistry.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: BreakPointRegistry, deps: [{ token: BREAKPOINTS }], target: i0.ɵɵFactoryTarget.Injectable });
68
+ BreakPointRegistry.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: BreakPointRegistry, providedIn: 'root' });
69
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: BreakPointRegistry, decorators: [{
70
+ type: Injectable,
71
+ args: [{ providedIn: 'root' }]
72
+ }], ctorParameters: function () { return [{ type: undefined, decorators: [{
73
+ type: Inject,
74
+ args: [BREAKPOINTS]
75
+ }] }]; } });
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWstcG9pbnQtcmVnaXN0cnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9saWJzL2ZsZXgtbGF5b3V0L2NvcmUvYnJlYWtwb2ludHMvYnJlYWstcG9pbnQtcmVnaXN0cnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBQ0gsT0FBTyxFQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFHakQsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ2pELE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLGVBQWUsQ0FBQzs7QUFJcEQ7Ozs7R0FJRztBQUVILE1BQU0sT0FBTyxrQkFBa0I7SUFHN0IsWUFBaUMsSUFBa0I7UUFxRG5EOztXQUVHO1FBQ2MsY0FBUyxHQUFHLElBQUksR0FBRyxFQUE4QixDQUFDO1FBdkRqRSxJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxXQUFXLENBQUMsS0FBYTtRQUN2QixPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxLQUFLLEtBQUssS0FBSyxDQUFDLENBQUM7SUFDbkYsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFhO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEtBQUssRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLFVBQVUsS0FBSyxLQUFLLENBQUMsQ0FBQztJQUN4RSxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsSUFBSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxNQUFNLElBQUksRUFBRSxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVEOztPQUVHO0lBQ0ssaUJBQWlCLENBQUMsR0FBVyxFQUNqQyxRQUFxQztRQUN2QyxJQUFJLFFBQVEsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN2QyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2IsUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLElBQUksQ0FBQztZQUM3QyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsUUFBUSxDQUFDLENBQUM7U0FDbkM7UUFDRCxPQUFPLFFBQVEsSUFBSSxJQUFJLENBQUM7SUFFMUIsQ0FBQzs7K0dBdERVLGtCQUFrQixrQkFHVCxXQUFXO21IQUhwQixrQkFBa0IsY0FETixNQUFNOzJGQUNsQixrQkFBa0I7a0JBRDlCLFVBQVU7bUJBQUMsRUFBQyxVQUFVLEVBQUUsTUFBTSxFQUFDOzswQkFJakIsTUFBTTsyQkFBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5pbXBvcnQge0luamVjdGFibGUsIEluamVjdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7QnJlYWtQb2ludH0gZnJvbSAnLi9icmVhay1wb2ludCc7XG5pbXBvcnQge0JSRUFLUE9JTlRTfSBmcm9tICcuL2JyZWFrLXBvaW50cy10b2tlbic7XG5pbXBvcnQge3NvcnRBc2NlbmRpbmdQcmlvcml0eX0gZnJvbSAnLi4vdXRpbHMvc29ydCc7XG5cbmV4cG9ydCB0eXBlIE9wdGlvbmFsQnJlYWtQb2ludCA9IEJyZWFrUG9pbnQgfCBudWxsO1xuXG4vKipcbiAqIFJlZ2lzdHJ5IG9mIDEuLm4gTWVkaWFRdWVyeSBicmVha3BvaW50IHJhbmdlc1xuICogVGhpcyBpcyBwdWJsaXNoZWQgYXMgYSBwcm92aWRlciBhbmQgbWF5IGJlIG92ZXJyaWRkZW4gZnJvbSBjdXN0b20sIGFwcGxpY2F0aW9uLXNwZWNpZmljIHJhbmdlc1xuICpcbiAqL1xuQEluamVjdGFibGUoe3Byb3ZpZGVkSW46ICdyb290J30pXG5leHBvcnQgY2xhc3MgQnJlYWtQb2ludFJlZ2lzdHJ5IHtcbiAgcmVhZG9ubHkgaXRlbXM6IEJyZWFrUG9pbnRbXTtcblxuICBjb25zdHJ1Y3RvcihASW5qZWN0KEJSRUFLUE9JTlRTKSBsaXN0OiBCcmVha1BvaW50W10pIHtcbiAgICB0aGlzLml0ZW1zID0gWy4uLmxpc3RdLnNvcnQoc29ydEFzY2VuZGluZ1ByaW9yaXR5KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZWFyY2ggYnJlYWtwb2ludHMgYnkgYWxpYXMgKGUuZy4gZ3QteHMpXG4gICAqL1xuICBmaW5kQnlBbGlhcyhhbGlhczogc3RyaW5nKTogT3B0aW9uYWxCcmVha1BvaW50IHtcbiAgICByZXR1cm4gIWFsaWFzID8gbnVsbCA6IHRoaXMuZmluZFdpdGhQcmVkaWNhdGUoYWxpYXMsIChicCkgPT4gYnAuYWxpYXMgPT09IGFsaWFzKTtcbiAgfVxuXG4gIGZpbmRCeVF1ZXJ5KHF1ZXJ5OiBzdHJpbmcpOiBPcHRpb25hbEJyZWFrUG9pbnQge1xuICAgIHJldHVybiB0aGlzLmZpbmRXaXRoUHJlZGljYXRlKHF1ZXJ5LCAoYnApID0+IGJwLm1lZGlhUXVlcnkgPT09IHF1ZXJ5KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgYWxsIHRoZSBicmVha3BvaW50cyB3aG9zZSByYW5nZXMgY291bGQgb3ZlcmxhcHBpbmcgYG5vcm1hbGAgcmFuZ2VzO1xuICAgKiBlLmcuIGd0LXNtIG92ZXJsYXBzIG1kLCBsZywgYW5kIHhsXG4gICAqL1xuICBnZXQgb3ZlcmxhcHBpbmdzKCk6IEJyZWFrUG9pbnRbXSB7XG4gICAgcmV0dXJuIHRoaXMuaXRlbXMuZmlsdGVyKGl0ID0+IGl0Lm92ZXJsYXBwaW5nKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgbGlzdCBvZiBhbGwgcmVnaXN0ZXJlZCAobm9uLWVtcHR5KSBicmVha3BvaW50IGFsaWFzZXNcbiAgICovXG4gIGdldCBhbGlhc2VzKCk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gdGhpcy5pdGVtcy5tYXAoaXQgPT4gaXQuYWxpYXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFsaWFzZXMgYXJlIG1hcHBlZCB0byBwcm9wZXJ0aWVzIHVzaW5nIHN1ZmZpeGVzXG4gICAqIGUuZy4gICdndC1zbScgZm9yIHByb3BlcnR5ICdsYXlvdXQnICB1c2VzIHN1ZmZpeCAnR3RTbSdcbiAgICogZm9yIHByb3BlcnR5IGxheW91dEd0U00uXG4gICAqL1xuICBnZXQgc3VmZml4ZXMoKTogc3RyaW5nW10ge1xuICAgIHJldHVybiB0aGlzLml0ZW1zLm1hcChpdCA9PiBpdD8uc3VmZml4ID8/ICcnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBNZW1vaXplZCBsb29rdXAgdXNpbmcgY3VzdG9tIHByZWRpY2F0ZSBmdW5jdGlvblxuICAgKi9cbiAgcHJpdmF0ZSBmaW5kV2l0aFByZWRpY2F0ZShrZXk6IHN0cmluZyxcbiAgICAgIHNlYXJjaEZuOiAoYnA6IEJyZWFrUG9pbnQpID0+IGJvb2xlYW4pOiBPcHRpb25hbEJyZWFrUG9pbnQge1xuICAgIGxldCByZXNwb25zZSA9IHRoaXMuZmluZEJ5TWFwLmdldChrZXkpO1xuICAgIGlmICghcmVzcG9uc2UpIHtcbiAgICAgIHJlc3BvbnNlID0gdGhpcy5pdGVtcy5maW5kKHNlYXJjaEZuKSA/PyBudWxsO1xuICAgICAgdGhpcy5maW5kQnlNYXAuc2V0KGtleSwgcmVzcG9uc2UpO1xuICAgIH1cbiAgICByZXR1cm4gcmVzcG9uc2UgPz8gbnVsbDtcblxuICB9XG5cbiAgLyoqXG4gICAqIE1lbW9pemVkIEJyZWFrUG9pbnQgTG9va3Vwc1xuICAgKi9cbiAgcHJpdmF0ZSByZWFkb25seSBmaW5kQnlNYXAgPSBuZXcgTWFwPFN0cmluZywgT3B0aW9uYWxCcmVha1BvaW50PigpO1xufVxuXG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWstcG9pbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9saWJzL2ZsZXgtbGF5b3V0L2NvcmUvYnJlYWtwb2ludHMvYnJlYWstcG9pbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCcmVha1BvaW50IHtcbiAgbWVkaWFRdWVyeTogc3RyaW5nO1xuICBhbGlhczogc3RyaW5nO1xuICBzdWZmaXg/OiBzdHJpbmc7XG4gIG92ZXJsYXBwaW5nPzogYm9vbGVhbjsgIC8vIERvZXMgdGhpcyByYW5nZSBvdmVybGFwIHdpdGggYW55IG90aGVyIHJhbmdlc1xuICBwcmlvcml0eT86IG51bWJlcjsgICAgICAvLyBkZXRlcm1pbmUgb3JkZXIgb2YgYWN0aXZhdGlvbiByZXBvcnRpbmc6IGhpZ2hlciBpcyBsYXN0IHJlcG9ydGVkXG59XG4iXX0=
@@ -0,0 +1,30 @@
1
+ /**
2
+ * @license
3
+ * Copyright Google LLC All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.io/license
7
+ */
8
+ import { inject, InjectionToken } from '@angular/core';
9
+ import { BREAKPOINT } from '../tokens/breakpoint-token';
10
+ import { DEFAULT_BREAKPOINTS } from '../breakpoints/data/break-points';
11
+ import { ORIENTATION_BREAKPOINTS } from '../breakpoints/data/orientation-break-points';
12
+ import { mergeByAlias } from '../breakpoints/breakpoint-tools';
13
+ import { LAYOUT_CONFIG } from '../tokens/library-config';
14
+ /**
15
+ * Injection token unique to the flex-layout library.
16
+ * Use this token when build a custom provider (see below).
17
+ */
18
+ export const BREAKPOINTS = new InjectionToken('Token (@angular/flex-layout) Breakpoints', {
19
+ providedIn: 'root',
20
+ factory: () => {
21
+ const breakpoints = inject(BREAKPOINT);
22
+ const layoutConfig = inject(LAYOUT_CONFIG);
23
+ const bpFlattenArray = [].concat.apply([], (breakpoints || [])
24
+ .map((v) => Array.isArray(v) ? v : [v]));
25
+ const builtIns = (layoutConfig.disableDefaultBps ? [] : DEFAULT_BREAKPOINTS)
26
+ .concat(layoutConfig.addOrientationBps ? ORIENTATION_BREAKPOINTS : []);
27
+ return mergeByAlias(builtIns, bpFlattenArray);
28
+ }
29
+ });
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWstcG9pbnRzLXRva2VuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbGlicy9mbGV4LWxheW91dC9jb3JlL2JyZWFrcG9pbnRzL2JyZWFrLXBvaW50cy10b2tlbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7QUFFSCxPQUFPLEVBQUMsTUFBTSxFQUFFLGNBQWMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUVyRCxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDdEQsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDckUsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sOENBQThDLENBQUM7QUFDckYsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBQzdELE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUV2RDs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQ3RCLElBQUksY0FBYyxDQUFlLDBDQUEwQyxFQUFFO0lBQzNFLFVBQVUsRUFBRSxNQUFNO0lBQ2xCLE9BQU8sRUFBRSxHQUFHLEVBQUU7UUFDWixNQUFNLFdBQVcsR0FBUSxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDNUMsTUFBTSxZQUFZLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQzNDLE1BQU0sY0FBYyxHQUFpQixFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLEVBQUUsQ0FBQyxXQUFXLElBQUksRUFBRSxDQUFDO2FBQ3pFLEdBQUcsQ0FBQyxDQUFDLENBQTRCLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdEUsTUFBTSxRQUFRLEdBQUcsQ0FBQyxZQUFZLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsbUJBQW1CLENBQUM7YUFDekUsTUFBTSxDQUFDLFlBQVksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsdUJBQXVCLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBRXpFLE9BQU8sWUFBWSxDQUFDLFFBQVEsRUFBRSxjQUFjLENBQUMsQ0FBQztJQUNoRCxDQUFDO0NBQ0YsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7aW5qZWN0LCBJbmplY3Rpb25Ub2tlbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0JyZWFrUG9pbnR9IGZyb20gJy4vYnJlYWstcG9pbnQnO1xuaW1wb3J0IHtCUkVBS1BPSU5UfSBmcm9tICcuLi90b2tlbnMvYnJlYWtwb2ludC10b2tlbic7XG5pbXBvcnQge0RFRkFVTFRfQlJFQUtQT0lOVFN9IGZyb20gJy4uL2JyZWFrcG9pbnRzL2RhdGEvYnJlYWstcG9pbnRzJztcbmltcG9ydCB7T1JJRU5UQVRJT05fQlJFQUtQT0lOVFN9IGZyb20gJy4uL2JyZWFrcG9pbnRzL2RhdGEvb3JpZW50YXRpb24tYnJlYWstcG9pbnRzJztcbmltcG9ydCB7bWVyZ2VCeUFsaWFzfSBmcm9tICcuLi9icmVha3BvaW50cy9icmVha3BvaW50LXRvb2xzJztcbmltcG9ydCB7TEFZT1VUX0NPTkZJR30gZnJvbSAnLi4vdG9rZW5zL2xpYnJhcnktY29uZmlnJztcblxuLyoqXG4gKiAgSW5qZWN0aW9uIHRva2VuIHVuaXF1ZSB0byB0aGUgZmxleC1sYXlvdXQgbGlicmFyeS5cbiAqICBVc2UgdGhpcyB0b2tlbiB3aGVuIGJ1aWxkIGEgY3VzdG9tIHByb3ZpZGVyIChzZWUgYmVsb3cpLlxuICovXG5leHBvcnQgY29uc3QgQlJFQUtQT0lOVFMgPVxuICBuZXcgSW5qZWN0aW9uVG9rZW48QnJlYWtQb2ludFtdPignVG9rZW4gKEBhbmd1bGFyL2ZsZXgtbGF5b3V0KSBCcmVha3BvaW50cycsIHtcbiAgICBwcm92aWRlZEluOiAncm9vdCcsXG4gICAgZmFjdG9yeTogKCkgPT4ge1xuICAgICAgY29uc3QgYnJlYWtwb2ludHM6IGFueSA9IGluamVjdChCUkVBS1BPSU5UKTtcbiAgICAgIGNvbnN0IGxheW91dENvbmZpZyA9IGluamVjdChMQVlPVVRfQ09ORklHKTtcbiAgICAgIGNvbnN0IGJwRmxhdHRlbkFycmF5OiBCcmVha1BvaW50W10gPSBbXS5jb25jYXQuYXBwbHkoW10sIChicmVha3BvaW50cyB8fCBbXSlcbiAgICAgICAgLm1hcCgodjogQnJlYWtQb2ludCB8IEJyZWFrUG9pbnRbXSkgPT4gQXJyYXkuaXNBcnJheSh2KSA/IHYgOiBbdl0pKTtcbiAgICAgIGNvbnN0IGJ1aWx0SW5zID0gKGxheW91dENvbmZpZy5kaXNhYmxlRGVmYXVsdEJwcyA/IFtdIDogREVGQVVMVF9CUkVBS1BPSU5UUylcbiAgICAgICAgLmNvbmNhdChsYXlvdXRDb25maWcuYWRkT3JpZW50YXRpb25CcHMgPyBPUklFTlRBVElPTl9CUkVBS1BPSU5UUyA6IFtdKTtcblxuICAgICAgcmV0dXJuIG1lcmdlQnlBbGlhcyhidWlsdElucywgYnBGbGF0dGVuQXJyYXkpO1xuICAgIH1cbiAgfSk7XG4iXX0=
@@ -0,0 +1,53 @@
1
+ import { extendObject } from '@angular/flex-layout/_private-utils';
2
+ const ALIAS_DELIMITERS = /(\.|-|_)/g;
3
+ function firstUpperCase(part) {
4
+ let first = part.length > 0 ? part.charAt(0) : '';
5
+ let remainder = (part.length > 1) ? part.slice(1) : '';
6
+ return first.toUpperCase() + remainder;
7
+ }
8
+ /**
9
+ * Converts snake-case to SnakeCase.
10
+ * @param name Text to UpperCamelCase
11
+ */
12
+ function camelCase(name) {
13
+ return name
14
+ .replace(ALIAS_DELIMITERS, '|')
15
+ .split('|')
16
+ .map(firstUpperCase)
17
+ .join('');
18
+ }
19
+ /**
20
+ * For each breakpoint, ensure that a Suffix is defined;
21
+ * fallback to UpperCamelCase the unique Alias value
22
+ */
23
+ export function validateSuffixes(list) {
24
+ list.forEach((bp) => {
25
+ if (!bp.suffix) {
26
+ bp.suffix = camelCase(bp.alias); // create Suffix value based on alias
27
+ bp.overlapping = !!bp.overlapping; // ensure default value
28
+ }
29
+ });
30
+ return list;
31
+ }
32
+ /**
33
+ * Merge a custom breakpoint list with the default list based on unique alias values
34
+ * - Items are added if the alias is not in the default list
35
+ * - Items are merged with the custom override if the alias exists in the default list
36
+ */
37
+ export function mergeByAlias(defaults, custom = []) {
38
+ const dict = {};
39
+ defaults.forEach(bp => {
40
+ dict[bp.alias] = bp;
41
+ });
42
+ // Merge custom breakpoints
43
+ custom.forEach((bp) => {
44
+ if (dict[bp.alias]) {
45
+ extendObject(dict[bp.alias], bp);
46
+ }
47
+ else {
48
+ dict[bp.alias] = bp;
49
+ }
50
+ });
51
+ return validateSuffixes(Object.keys(dict).map(k => dict[k]));
52
+ }
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWtwb2ludC10b29scy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xpYnMvZmxleC1sYXlvdXQvY29yZS9icmVha3BvaW50cy9icmVha3BvaW50LXRvb2xzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVFBLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUVqRSxNQUFNLGdCQUFnQixHQUFHLFdBQVcsQ0FBQztBQUNyQyxTQUFTLGNBQWMsQ0FBQyxJQUFZO0lBQ2xDLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDbEQsSUFBSSxTQUFTLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDdkQsT0FBTyxLQUFLLENBQUMsV0FBVyxFQUFFLEdBQUcsU0FBUyxDQUFDO0FBQ3pDLENBQUM7QUFFRDs7O0dBR0c7QUFDSCxTQUFTLFNBQVMsQ0FBQyxJQUFZO0lBQzdCLE9BQU8sSUFBSTtTQUNOLE9BQU8sQ0FBQyxnQkFBZ0IsRUFBRSxHQUFHLENBQUM7U0FDOUIsS0FBSyxDQUFDLEdBQUcsQ0FBQztTQUNWLEdBQUcsQ0FBQyxjQUFjLENBQUM7U0FDbkIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0FBQ2hCLENBQUM7QUFFRDs7O0dBR0c7QUFDSCxNQUFNLFVBQVUsZ0JBQWdCLENBQUMsSUFBa0I7SUFDakQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQWMsRUFBRSxFQUFFO1FBQzlCLElBQUksQ0FBQyxFQUFFLENBQUMsTUFBTSxFQUFFO1lBQ2QsRUFBRSxDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUcscUNBQXFDO1lBQ3hFLEVBQUUsQ0FBQyxXQUFXLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxXQUFXLENBQUMsQ0FBQyx1QkFBdUI7U0FDM0Q7SUFDSCxDQUFDLENBQUMsQ0FBQztJQUNILE9BQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQztBQUVEOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsWUFBWSxDQUFDLFFBQXNCLEVBQUUsU0FBdUIsRUFBRTtJQUM1RSxNQUFNLElBQUksR0FBZ0MsRUFBRSxDQUFDO0lBQzdDLFFBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLEVBQUU7UUFDcEIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDdEIsQ0FBQyxDQUFDLENBQUM7SUFDSCwyQkFBMkI7SUFDM0IsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQWMsRUFBRSxFQUFFO1FBQ2hDLElBQUksSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNsQixZQUFZLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztTQUNsQzthQUFNO1lBQ0wsSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUM7U0FDckI7SUFDSCxDQUFDLENBQUMsQ0FBQztJQUVILE9BQU8sZ0JBQWdCLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQy9ELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cbmltcG9ydCB7QnJlYWtQb2ludH0gZnJvbSAnLi9icmVhay1wb2ludCc7XG5pbXBvcnQge2V4dGVuZE9iamVjdH0gZnJvbSAnQGFuZ3VsYXIvZmxleC1sYXlvdXQvX3ByaXZhdGUtdXRpbHMnO1xuXG5jb25zdCBBTElBU19ERUxJTUlURVJTID0gLyhcXC58LXxfKS9nO1xuZnVuY3Rpb24gZmlyc3RVcHBlckNhc2UocGFydDogc3RyaW5nKSB7XG4gIGxldCBmaXJzdCA9IHBhcnQubGVuZ3RoID4gMCA/IHBhcnQuY2hhckF0KDApIDogJyc7XG4gIGxldCByZW1haW5kZXIgPSAocGFydC5sZW5ndGggPiAxKSA/IHBhcnQuc2xpY2UoMSkgOiAnJztcbiAgcmV0dXJuIGZpcnN0LnRvVXBwZXJDYXNlKCkgKyByZW1haW5kZXI7XG59XG5cbi8qKlxuICogQ29udmVydHMgc25ha2UtY2FzZSB0byBTbmFrZUNhc2UuXG4gKiBAcGFyYW0gbmFtZSBUZXh0IHRvIFVwcGVyQ2FtZWxDYXNlXG4gKi9cbmZ1bmN0aW9uIGNhbWVsQ2FzZShuYW1lOiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gbmFtZVxuICAgICAgLnJlcGxhY2UoQUxJQVNfREVMSU1JVEVSUywgJ3wnKVxuICAgICAgLnNwbGl0KCd8JylcbiAgICAgIC5tYXAoZmlyc3RVcHBlckNhc2UpXG4gICAgICAuam9pbignJyk7XG59XG5cbi8qKlxuICogRm9yIGVhY2ggYnJlYWtwb2ludCwgZW5zdXJlIHRoYXQgYSBTdWZmaXggaXMgZGVmaW5lZDtcbiAqIGZhbGxiYWNrIHRvIFVwcGVyQ2FtZWxDYXNlIHRoZSB1bmlxdWUgQWxpYXMgdmFsdWVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlU3VmZml4ZXMobGlzdDogQnJlYWtQb2ludFtdKTogQnJlYWtQb2ludFtdIHtcbiAgbGlzdC5mb3JFYWNoKChicDogQnJlYWtQb2ludCkgPT4ge1xuICAgIGlmICghYnAuc3VmZml4KSB7XG4gICAgICBicC5zdWZmaXggPSBjYW1lbENhc2UoYnAuYWxpYXMpOyAgIC8vIGNyZWF0ZSBTdWZmaXggdmFsdWUgYmFzZWQgb24gYWxpYXNcbiAgICAgIGJwLm92ZXJsYXBwaW5nID0gISFicC5vdmVybGFwcGluZzsgLy8gZW5zdXJlIGRlZmF1bHQgdmFsdWVcbiAgICB9XG4gIH0pO1xuICByZXR1cm4gbGlzdDtcbn1cblxuLyoqXG4gKiBNZXJnZSBhIGN1c3RvbSBicmVha3BvaW50IGxpc3Qgd2l0aCB0aGUgZGVmYXVsdCBsaXN0IGJhc2VkIG9uIHVuaXF1ZSBhbGlhcyB2YWx1ZXNcbiAqICAtIEl0ZW1zIGFyZSBhZGRlZCBpZiB0aGUgYWxpYXMgaXMgbm90IGluIHRoZSBkZWZhdWx0IGxpc3RcbiAqICAtIEl0ZW1zIGFyZSBtZXJnZWQgd2l0aCB0aGUgY3VzdG9tIG92ZXJyaWRlIGlmIHRoZSBhbGlhcyBleGlzdHMgaW4gdGhlIGRlZmF1bHQgbGlzdFxuICovXG5leHBvcnQgZnVuY3Rpb24gbWVyZ2VCeUFsaWFzKGRlZmF1bHRzOiBCcmVha1BvaW50W10sIGN1c3RvbTogQnJlYWtQb2ludFtdID0gW10pOiBCcmVha1BvaW50W10ge1xuICBjb25zdCBkaWN0OiB7W2tleTogc3RyaW5nXTogQnJlYWtQb2ludH0gPSB7fTtcbiAgZGVmYXVsdHMuZm9yRWFjaChicCA9PiB7XG4gICAgZGljdFticC5hbGlhc10gPSBicDtcbiAgfSk7XG4gIC8vIE1lcmdlIGN1c3RvbSBicmVha3BvaW50c1xuICBjdXN0b20uZm9yRWFjaCgoYnA6IEJyZWFrUG9pbnQpID0+IHtcbiAgICBpZiAoZGljdFticC5hbGlhc10pIHtcbiAgICAgIGV4dGVuZE9iamVjdChkaWN0W2JwLmFsaWFzXSwgYnApO1xuICAgIH0gZWxzZSB7XG4gICAgICBkaWN0W2JwLmFsaWFzXSA9IGJwO1xuICAgIH1cbiAgfSk7XG5cbiAgcmV0dXJuIHZhbGlkYXRlU3VmZml4ZXMoT2JqZWN0LmtleXMoZGljdCkubWFwKGsgPT4gZGljdFtrXSkpO1xufVxuIl19
@@ -0,0 +1,78 @@
1
+ /**
2
+ * NOTE: Smaller ranges have HIGHER priority since the match is more specific
3
+ */
4
+ export const DEFAULT_BREAKPOINTS = [
5
+ {
6
+ alias: 'xs',
7
+ mediaQuery: 'screen and (min-width: 0px) and (max-width: 599.98px)',
8
+ priority: 1000,
9
+ },
10
+ {
11
+ alias: 'sm',
12
+ mediaQuery: 'screen and (min-width: 600px) and (max-width: 959.98px)',
13
+ priority: 900,
14
+ },
15
+ {
16
+ alias: 'md',
17
+ mediaQuery: 'screen and (min-width: 960px) and (max-width: 1279.98px)',
18
+ priority: 800,
19
+ },
20
+ {
21
+ alias: 'lg',
22
+ mediaQuery: 'screen and (min-width: 1280px) and (max-width: 1919.98px)',
23
+ priority: 700,
24
+ },
25
+ {
26
+ alias: 'xl',
27
+ mediaQuery: 'screen and (min-width: 1920px) and (max-width: 4999.98px)',
28
+ priority: 600,
29
+ },
30
+ {
31
+ alias: 'lt-sm',
32
+ overlapping: true,
33
+ mediaQuery: 'screen and (max-width: 599.98px)',
34
+ priority: 950,
35
+ },
36
+ {
37
+ alias: 'lt-md',
38
+ overlapping: true,
39
+ mediaQuery: 'screen and (max-width: 959.98px)',
40
+ priority: 850,
41
+ },
42
+ {
43
+ alias: 'lt-lg',
44
+ overlapping: true,
45
+ mediaQuery: 'screen and (max-width: 1279.98px)',
46
+ priority: 750,
47
+ },
48
+ {
49
+ alias: 'lt-xl',
50
+ overlapping: true,
51
+ priority: 650,
52
+ mediaQuery: 'screen and (max-width: 1919.98px)',
53
+ },
54
+ {
55
+ alias: 'gt-xs',
56
+ overlapping: true,
57
+ mediaQuery: 'screen and (min-width: 600px)',
58
+ priority: -950,
59
+ },
60
+ {
61
+ alias: 'gt-sm',
62
+ overlapping: true,
63
+ mediaQuery: 'screen and (min-width: 960px)',
64
+ priority: -850,
65
+ }, {
66
+ alias: 'gt-md',
67
+ overlapping: true,
68
+ mediaQuery: 'screen and (min-width: 1280px)',
69
+ priority: -750,
70
+ },
71
+ {
72
+ alias: 'gt-lg',
73
+ overlapping: true,
74
+ mediaQuery: 'screen and (min-width: 1920px)',
75
+ priority: -650,
76
+ }
77
+ ];
78
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWstcG9pbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbGlicy9mbGV4LWxheW91dC9jb3JlL2JyZWFrcG9pbnRzL2RhdGEvYnJlYWstcG9pbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVNBOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQWlCO0lBQy9DO1FBQ0UsS0FBSyxFQUFFLElBQUk7UUFDWCxVQUFVLEVBQUUsdURBQXVEO1FBQ25FLFFBQVEsRUFBRSxJQUFJO0tBQ2Y7SUFDRDtRQUNFLEtBQUssRUFBRSxJQUFJO1FBQ1gsVUFBVSxFQUFFLHlEQUF5RDtRQUNyRSxRQUFRLEVBQUUsR0FBRztLQUNkO0lBQ0Q7UUFDRSxLQUFLLEVBQUUsSUFBSTtRQUNYLFVBQVUsRUFBRSwwREFBMEQ7UUFDdEUsUUFBUSxFQUFFLEdBQUc7S0FDZDtJQUNEO1FBQ0UsS0FBSyxFQUFFLElBQUk7UUFDWCxVQUFVLEVBQUUsMkRBQTJEO1FBQ3ZFLFFBQVEsRUFBRSxHQUFHO0tBQ2Q7SUFDRDtRQUNFLEtBQUssRUFBRSxJQUFJO1FBQ1gsVUFBVSxFQUFFLDJEQUEyRDtRQUN2RSxRQUFRLEVBQUUsR0FBRztLQUNkO0lBQ0Q7UUFDRSxLQUFLLEVBQUUsT0FBTztRQUNkLFdBQVcsRUFBRSxJQUFJO1FBQ2pCLFVBQVUsRUFBRSxrQ0FBa0M7UUFDOUMsUUFBUSxFQUFFLEdBQUc7S0FDZDtJQUNEO1FBQ0UsS0FBSyxFQUFFLE9BQU87UUFDZCxXQUFXLEVBQUUsSUFBSTtRQUNqQixVQUFVLEVBQUUsa0NBQWtDO1FBQzlDLFFBQVEsRUFBRSxHQUFHO0tBQ2Q7SUFDRDtRQUNFLEtBQUssRUFBRSxPQUFPO1FBQ2QsV0FBVyxFQUFFLElBQUk7UUFDakIsVUFBVSxFQUFFLG1DQUFtQztRQUMvQyxRQUFRLEVBQUUsR0FBRztLQUNkO0lBQ0Q7UUFDRSxLQUFLLEVBQUUsT0FBTztRQUNkLFdBQVcsRUFBRSxJQUFJO1FBQ2pCLFFBQVEsRUFBRSxHQUFHO1FBQ2IsVUFBVSxFQUFFLG1DQUFtQztLQUNoRDtJQUNEO1FBQ0UsS0FBSyxFQUFFLE9BQU87UUFDZCxXQUFXLEVBQUUsSUFBSTtRQUNqQixVQUFVLEVBQUUsK0JBQStCO1FBQzNDLFFBQVEsRUFBRSxDQUFDLEdBQUc7S0FDZjtJQUNEO1FBQ0UsS0FBSyxFQUFFLE9BQU87UUFDZCxXQUFXLEVBQUUsSUFBSTtRQUNqQixVQUFVLEVBQUUsK0JBQStCO1FBQzNDLFFBQVEsRUFBRSxDQUFDLEdBQUc7S0FDZixFQUFFO1FBQ0QsS0FBSyxFQUFFLE9BQU87UUFDZCxXQUFXLEVBQUUsSUFBSTtRQUNqQixVQUFVLEVBQUUsZ0NBQWdDO1FBQzVDLFFBQVEsRUFBRSxDQUFDLEdBQUc7S0FDZjtJQUNEO1FBQ0UsS0FBSyxFQUFFLE9BQU87UUFDZCxXQUFXLEVBQUUsSUFBSTtRQUNqQixVQUFVLEVBQUUsZ0NBQWdDO1FBQzVDLFFBQVEsRUFBRSxDQUFDLEdBQUc7S0FDZjtDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cbmltcG9ydCB7QnJlYWtQb2ludH0gZnJvbSAnLi4vYnJlYWstcG9pbnQnO1xuXG4vKipcbiAqIE5PVEU6IFNtYWxsZXIgcmFuZ2VzIGhhdmUgSElHSEVSIHByaW9yaXR5IHNpbmNlIHRoZSBtYXRjaCBpcyBtb3JlIHNwZWNpZmljXG4gKi9cbmV4cG9ydCBjb25zdCBERUZBVUxUX0JSRUFLUE9JTlRTOiBCcmVha1BvaW50W10gPSBbXG4gIHtcbiAgICBhbGlhczogJ3hzJyxcbiAgICBtZWRpYVF1ZXJ5OiAnc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwcHgpIGFuZCAobWF4LXdpZHRoOiA1OTkuOThweCknLFxuICAgIHByaW9yaXR5OiAxMDAwLFxuICB9LFxuICB7XG4gICAgYWxpYXM6ICdzbScsXG4gICAgbWVkaWFRdWVyeTogJ3NjcmVlbiBhbmQgKG1pbi13aWR0aDogNjAwcHgpIGFuZCAobWF4LXdpZHRoOiA5NTkuOThweCknLFxuICAgIHByaW9yaXR5OiA5MDAsXG4gIH0sXG4gIHtcbiAgICBhbGlhczogJ21kJyxcbiAgICBtZWRpYVF1ZXJ5OiAnc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5NjBweCkgYW5kIChtYXgtd2lkdGg6IDEyNzkuOThweCknLFxuICAgIHByaW9yaXR5OiA4MDAsXG4gIH0sXG4gIHtcbiAgICBhbGlhczogJ2xnJyxcbiAgICBtZWRpYVF1ZXJ5OiAnc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjgwcHgpIGFuZCAobWF4LXdpZHRoOiAxOTE5Ljk4cHgpJyxcbiAgICBwcmlvcml0eTogNzAwLFxuICB9LFxuICB7XG4gICAgYWxpYXM6ICd4bCcsXG4gICAgbWVkaWFRdWVyeTogJ3NjcmVlbiBhbmQgKG1pbi13aWR0aDogMTkyMHB4KSBhbmQgKG1heC13aWR0aDogNDk5OS45OHB4KScsXG4gICAgcHJpb3JpdHk6IDYwMCxcbiAgfSxcbiAge1xuICAgIGFsaWFzOiAnbHQtc20nLFxuICAgIG92ZXJsYXBwaW5nOiB0cnVlLFxuICAgIG1lZGlhUXVlcnk6ICdzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU5OS45OHB4KScsXG4gICAgcHJpb3JpdHk6IDk1MCxcbiAgfSxcbiAge1xuICAgIGFsaWFzOiAnbHQtbWQnLFxuICAgIG92ZXJsYXBwaW5nOiB0cnVlLFxuICAgIG1lZGlhUXVlcnk6ICdzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OS45OHB4KScsXG4gICAgcHJpb3JpdHk6IDg1MCxcbiAgfSxcbiAge1xuICAgIGFsaWFzOiAnbHQtbGcnLFxuICAgIG92ZXJsYXBwaW5nOiB0cnVlLFxuICAgIG1lZGlhUXVlcnk6ICdzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyNzkuOThweCknLFxuICAgIHByaW9yaXR5OiA3NTAsXG4gIH0sXG4gIHtcbiAgICBhbGlhczogJ2x0LXhsJyxcbiAgICBvdmVybGFwcGluZzogdHJ1ZSxcbiAgICBwcmlvcml0eTogNjUwLFxuICAgIG1lZGlhUXVlcnk6ICdzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE5MTkuOThweCknLFxuICB9LFxuICB7XG4gICAgYWxpYXM6ICdndC14cycsXG4gICAgb3ZlcmxhcHBpbmc6IHRydWUsXG4gICAgbWVkaWFRdWVyeTogJ3NjcmVlbiBhbmQgKG1pbi13aWR0aDogNjAwcHgpJyxcbiAgICBwcmlvcml0eTogLTk1MCxcbiAgfSxcbiAge1xuICAgIGFsaWFzOiAnZ3Qtc20nLFxuICAgIG92ZXJsYXBwaW5nOiB0cnVlLFxuICAgIG1lZGlhUXVlcnk6ICdzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk2MHB4KScsXG4gICAgcHJpb3JpdHk6IC04NTAsXG4gIH0sIHtcbiAgICBhbGlhczogJ2d0LW1kJyxcbiAgICBvdmVybGFwcGluZzogdHJ1ZSxcbiAgICBtZWRpYVF1ZXJ5OiAnc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjgwcHgpJyxcbiAgICBwcmlvcml0eTogLTc1MCxcbiAgfSxcbiAge1xuICAgIGFsaWFzOiAnZ3QtbGcnLFxuICAgIG92ZXJsYXBwaW5nOiB0cnVlLFxuICAgIG1lZGlhUXVlcnk6ICdzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE5MjBweCknLFxuICAgIHByaW9yaXR5OiAtNjUwLFxuICB9XG5dO1xuXG4iXX0=
@@ -0,0 +1,40 @@
1
+ /**
2
+ * @license
3
+ * Copyright Google LLC All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.io/license
7
+ */
8
+ /* tslint:disable */
9
+ const HANDSET_PORTRAIT = '(orientation: portrait) and (max-width: 599.98px)';
10
+ const HANDSET_LANDSCAPE = '(orientation: landscape) and (max-width: 959.98px)';
11
+ const TABLET_PORTRAIT = '(orientation: portrait) and (min-width: 600px) and (max-width: 839.98px)';
12
+ const TABLET_LANDSCAPE = '(orientation: landscape) and (min-width: 960px) and (max-width: 1279.98px)';
13
+ const WEB_PORTRAIT = '(orientation: portrait) and (min-width: 840px)';
14
+ const WEB_LANDSCAPE = '(orientation: landscape) and (min-width: 1280px)';
15
+ export const ScreenTypes = {
16
+ 'HANDSET': `${HANDSET_PORTRAIT}, ${HANDSET_LANDSCAPE}`,
17
+ 'TABLET': `${TABLET_PORTRAIT} , ${TABLET_LANDSCAPE}`,
18
+ 'WEB': `${WEB_PORTRAIT}, ${WEB_LANDSCAPE} `,
19
+ 'HANDSET_PORTRAIT': `${HANDSET_PORTRAIT}`,
20
+ 'TABLET_PORTRAIT': `${TABLET_PORTRAIT} `,
21
+ 'WEB_PORTRAIT': `${WEB_PORTRAIT}`,
22
+ 'HANDSET_LANDSCAPE': `${HANDSET_LANDSCAPE}`,
23
+ 'TABLET_LANDSCAPE': `${TABLET_LANDSCAPE}`,
24
+ 'WEB_LANDSCAPE': `${WEB_LANDSCAPE}`
25
+ };
26
+ /**
27
+ * Extended Breakpoints for handset/tablets with landscape or portrait orientations
28
+ */
29
+ export const ORIENTATION_BREAKPOINTS = [
30
+ { 'alias': 'handset', priority: 2000, 'mediaQuery': ScreenTypes.HANDSET },
31
+ { 'alias': 'handset.landscape', priority: 2000, 'mediaQuery': ScreenTypes.HANDSET_LANDSCAPE },
32
+ { 'alias': 'handset.portrait', priority: 2000, 'mediaQuery': ScreenTypes.HANDSET_PORTRAIT },
33
+ { 'alias': 'tablet', priority: 2100, 'mediaQuery': ScreenTypes.TABLET },
34
+ { 'alias': 'tablet.landscape', priority: 2100, 'mediaQuery': ScreenTypes.TABLET_LANDSCAPE },
35
+ { 'alias': 'tablet.portrait', priority: 2100, 'mediaQuery': ScreenTypes.TABLET_PORTRAIT },
36
+ { 'alias': 'web', priority: 2200, 'mediaQuery': ScreenTypes.WEB, overlapping: true },
37
+ { 'alias': 'web.landscape', priority: 2200, 'mediaQuery': ScreenTypes.WEB_LANDSCAPE, overlapping: true },
38
+ { 'alias': 'web.portrait', priority: 2200, 'mediaQuery': ScreenTypes.WEB_PORTRAIT, overlapping: true }
39
+ ];
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JpZW50YXRpb24tYnJlYWstcG9pbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbGlicy9mbGV4LWxheW91dC9jb3JlL2JyZWFrcG9pbnRzL2RhdGEvb3JpZW50YXRpb24tYnJlYWstcG9pbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUlILG9CQUFvQjtBQUNwQixNQUFNLGdCQUFnQixHQUFJLG1EQUFtRCxDQUFDO0FBQzlFLE1BQU0saUJBQWlCLEdBQUcsb0RBQW9ELENBQUM7QUFFL0UsTUFBTSxlQUFlLEdBQUssMEVBQTBFLENBQUM7QUFDckcsTUFBTSxnQkFBZ0IsR0FBSSw0RUFBNEUsQ0FBQztBQUV2RyxNQUFNLFlBQVksR0FBUSxnREFBZ0QsQ0FBQztBQUMzRSxNQUFNLGFBQWEsR0FBTyxrREFBa0QsQ0FBQztBQUU3RSxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUc7SUFDekIsU0FBUyxFQUFhLEdBQUcsZ0JBQWdCLEtBQUssaUJBQWlCLEVBQUU7SUFDakUsUUFBUSxFQUFjLEdBQUcsZUFBZSxNQUFNLGdCQUFnQixFQUFFO0lBQ2hFLEtBQUssRUFBaUIsR0FBRyxZQUFZLEtBQUssYUFBYSxHQUFHO0lBRTFELGtCQUFrQixFQUFJLEdBQUcsZ0JBQWdCLEVBQUU7SUFDM0MsaUJBQWlCLEVBQUssR0FBRyxlQUFlLEdBQUc7SUFDM0MsY0FBYyxFQUFRLEdBQUcsWUFBWSxFQUFFO0lBRXZDLG1CQUFtQixFQUFHLEdBQUcsaUJBQWlCLEVBQUU7SUFDNUMsa0JBQWtCLEVBQUksR0FBRyxnQkFBZ0IsRUFBRTtJQUMzQyxlQUFlLEVBQU8sR0FBRyxhQUFhLEVBQUU7Q0FDekMsQ0FBQztBQUVGOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQWtCO0lBQ3BELEVBQUMsT0FBTyxFQUFFLFNBQVMsRUFBYSxRQUFRLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxXQUFXLENBQUMsT0FBTyxFQUFDO0lBQ2xGLEVBQUMsT0FBTyxFQUFFLG1CQUFtQixFQUFHLFFBQVEsRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLFdBQVcsQ0FBQyxpQkFBaUIsRUFBQztJQUM1RixFQUFDLE9BQU8sRUFBRSxrQkFBa0IsRUFBSSxRQUFRLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxXQUFXLENBQUMsZ0JBQWdCLEVBQUM7SUFFM0YsRUFBQyxPQUFPLEVBQUUsUUFBUSxFQUFjLFFBQVEsRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLFdBQVcsQ0FBQyxNQUFNLEVBQUM7SUFDakYsRUFBQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUksUUFBUSxFQUFFLElBQUksRUFBRSxZQUFZLEVBQUUsV0FBVyxDQUFDLGdCQUFnQixFQUFDO0lBQzNGLEVBQUMsT0FBTyxFQUFFLGlCQUFpQixFQUFLLFFBQVEsRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLFdBQVcsQ0FBQyxlQUFlLEVBQUM7SUFFMUYsRUFBQyxPQUFPLEVBQUUsS0FBSyxFQUFpQixRQUFRLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxXQUFXLENBQUMsR0FBRyxFQUFFLFdBQVcsRUFBRyxJQUFJLEVBQUU7SUFDbkcsRUFBQyxPQUFPLEVBQUUsZUFBZSxFQUFPLFFBQVEsRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLFdBQVcsQ0FBQyxhQUFhLEVBQUUsV0FBVyxFQUFHLElBQUksRUFBRTtJQUM3RyxFQUFDLE9BQU8sRUFBRSxjQUFjLEVBQVEsUUFBUSxFQUFFLElBQUksRUFBRSxZQUFZLEVBQUUsV0FBVyxDQUFDLFlBQVksRUFBRSxXQUFXLEVBQUcsSUFBSSxFQUFFO0NBQzdHLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHtCcmVha1BvaW50fSBmcm9tICcuLi9icmVhay1wb2ludCc7XG5cbi8qIHRzbGludDpkaXNhYmxlICovXG5jb25zdCBIQU5EU0VUX1BPUlRSQUlUICA9ICcob3JpZW50YXRpb246IHBvcnRyYWl0KSBhbmQgKG1heC13aWR0aDogNTk5Ljk4cHgpJztcbmNvbnN0IEhBTkRTRVRfTEFORFNDQVBFID0gJyhvcmllbnRhdGlvbjogbGFuZHNjYXBlKSBhbmQgKG1heC13aWR0aDogOTU5Ljk4cHgpJztcblxuY29uc3QgVEFCTEVUX1BPUlRSQUlUICAgPSAnKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkgYW5kIChtaW4td2lkdGg6IDYwMHB4KSBhbmQgKG1heC13aWR0aDogODM5Ljk4cHgpJztcbmNvbnN0IFRBQkxFVF9MQU5EU0NBUEUgID0gJyhvcmllbnRhdGlvbjogbGFuZHNjYXBlKSBhbmQgKG1pbi13aWR0aDogOTYwcHgpIGFuZCAobWF4LXdpZHRoOiAxMjc5Ljk4cHgpJztcblxuY29uc3QgV0VCX1BPUlRSQUlUICAgICAgPSAnKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkgYW5kIChtaW4td2lkdGg6IDg0MHB4KSc7XG5jb25zdCBXRUJfTEFORFNDQVBFICAgICA9ICcob3JpZW50YXRpb246IGxhbmRzY2FwZSkgYW5kIChtaW4td2lkdGg6IDEyODBweCknO1xuXG5leHBvcnQgY29uc3QgU2NyZWVuVHlwZXMgPSB7XG4gICdIQU5EU0VUJyAgICAgICAgICAgOiBgJHtIQU5EU0VUX1BPUlRSQUlUfSwgJHtIQU5EU0VUX0xBTkRTQ0FQRX1gLFxuICAnVEFCTEVUJyAgICAgICAgICAgIDogYCR7VEFCTEVUX1BPUlRSQUlUfSAsICR7VEFCTEVUX0xBTkRTQ0FQRX1gLFxuICAnV0VCJyAgICAgICAgICAgICAgIDogYCR7V0VCX1BPUlRSQUlUfSwgJHtXRUJfTEFORFNDQVBFfSBgLFxuXG4gICdIQU5EU0VUX1BPUlRSQUlUJyAgOiBgJHtIQU5EU0VUX1BPUlRSQUlUfWAsXG4gICdUQUJMRVRfUE9SVFJBSVQnICAgOiBgJHtUQUJMRVRfUE9SVFJBSVR9IGAsXG4gICdXRUJfUE9SVFJBSVQnICAgICAgOiBgJHtXRUJfUE9SVFJBSVR9YCxcblxuICAnSEFORFNFVF9MQU5EU0NBUEUnIDogYCR7SEFORFNFVF9MQU5EU0NBUEV9YCxcbiAgJ1RBQkxFVF9MQU5EU0NBUEUnICA6IGAke1RBQkxFVF9MQU5EU0NBUEV9YCxcbiAgJ1dFQl9MQU5EU0NBUEUnICAgICA6IGAke1dFQl9MQU5EU0NBUEV9YFxufTtcblxuLyoqXG4gKiBFeHRlbmRlZCBCcmVha3BvaW50cyBmb3IgaGFuZHNldC90YWJsZXRzIHdpdGggbGFuZHNjYXBlIG9yIHBvcnRyYWl0IG9yaWVudGF0aW9uc1xuICovXG5leHBvcnQgY29uc3QgT1JJRU5UQVRJT05fQlJFQUtQT0lOVFMgOiBCcmVha1BvaW50W10gPSBbXG4gIHsnYWxpYXMnOiAnaGFuZHNldCcsICAgICAgICAgICAgcHJpb3JpdHk6IDIwMDAsICdtZWRpYVF1ZXJ5JzogU2NyZWVuVHlwZXMuSEFORFNFVH0sXG4gIHsnYWxpYXMnOiAnaGFuZHNldC5sYW5kc2NhcGUnLCAgcHJpb3JpdHk6IDIwMDAsICdtZWRpYVF1ZXJ5JzogU2NyZWVuVHlwZXMuSEFORFNFVF9MQU5EU0NBUEV9LFxuICB7J2FsaWFzJzogJ2hhbmRzZXQucG9ydHJhaXQnLCAgIHByaW9yaXR5OiAyMDAwLCAnbWVkaWFRdWVyeSc6IFNjcmVlblR5cGVzLkhBTkRTRVRfUE9SVFJBSVR9LFxuXG4gIHsnYWxpYXMnOiAndGFibGV0JywgICAgICAgICAgICAgcHJpb3JpdHk6IDIxMDAsICdtZWRpYVF1ZXJ5JzogU2NyZWVuVHlwZXMuVEFCTEVUfSxcbiAgeydhbGlhcyc6ICd0YWJsZXQubGFuZHNjYXBlJywgICBwcmlvcml0eTogMjEwMCwgJ21lZGlhUXVlcnknOiBTY3JlZW5UeXBlcy5UQUJMRVRfTEFORFNDQVBFfSxcbiAgeydhbGlhcyc6ICd0YWJsZXQucG9ydHJhaXQnLCAgICBwcmlvcml0eTogMjEwMCwgJ21lZGlhUXVlcnknOiBTY3JlZW5UeXBlcy5UQUJMRVRfUE9SVFJBSVR9LFxuXG4gIHsnYWxpYXMnOiAnd2ViJywgICAgICAgICAgICAgICAgcHJpb3JpdHk6IDIyMDAsICdtZWRpYVF1ZXJ5JzogU2NyZWVuVHlwZXMuV0VCLCBvdmVybGFwcGluZyA6IHRydWUgfSxcbiAgeydhbGlhcyc6ICd3ZWIubGFuZHNjYXBlJywgICAgICBwcmlvcml0eTogMjIwMCwgJ21lZGlhUXVlcnknOiBTY3JlZW5UeXBlcy5XRUJfTEFORFNDQVBFLCBvdmVybGFwcGluZyA6IHRydWUgfSxcbiAgeydhbGlhcyc6ICd3ZWIucG9ydHJhaXQnLCAgICAgICBwcmlvcml0eTogMjIwMCwgJ21lZGlhUXVlcnknOiBTY3JlZW5UeXBlcy5XRUJfUE9SVFJBSVQsIG92ZXJsYXBwaW5nIDogdHJ1ZSB9XG5dO1xuIl19
@@ -0,0 +1,13 @@
1
+ /**
2
+ * @license
3
+ * Copyright Google LLC All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.io/license
7
+ */
8
+ export * from './data/break-points';
9
+ export * from './data/orientation-break-points';
10
+ export * from './break-point';
11
+ export * from './break-point-registry';
12
+ export * from './break-points-token';
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9saWJzL2ZsZXgtbGF5b3V0L2NvcmUvYnJlYWtwb2ludHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUgsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLGlDQUFpQyxDQUFDO0FBRWhELGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyxzQkFBc0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2RhdGEvYnJlYWstcG9pbnRzJztcbmV4cG9ydCAqIGZyb20gJy4vZGF0YS9vcmllbnRhdGlvbi1icmVhay1wb2ludHMnO1xuXG5leHBvcnQgKiBmcm9tICcuL2JyZWFrLXBvaW50JztcbmV4cG9ydCAqIGZyb20gJy4vYnJlYWstcG9pbnQtcmVnaXN0cnknO1xuZXhwb3J0ICogZnJvbSAnLi9icmVhay1wb2ludHMtdG9rZW4nO1xuIl19
@@ -0,0 +1,41 @@
1
+ /**
2
+ * @license
3
+ * Copyright Google LLC All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.io/license
7
+ */
8
+ import { APP_BOOTSTRAP_LISTENER, PLATFORM_ID } from '@angular/core';
9
+ import { DOCUMENT, isPlatformBrowser } from '@angular/common';
10
+ /**
11
+ * Find all of the server-generated stylings, if any, and remove them
12
+ * This will be in the form of inline classes and the style block in the
13
+ * head of the DOM
14
+ */
15
+ export function removeStyles(_document, platformId) {
16
+ return () => {
17
+ if (isPlatformBrowser(platformId)) {
18
+ const elements = Array.from(_document.querySelectorAll(`[class*=${CLASS_NAME}]`));
19
+ // RegExp constructor should only be used if passing a variable to the constructor.
20
+ // When using static regular expression it is more performant to use reg exp literal.
21
+ // This is also needed to provide Safari 9 compatibility, please see
22
+ // https://stackoverflow.com/questions/37919802 for more discussion.
23
+ const classRegex = /\bflex-layout-.+?\b/g;
24
+ elements.forEach(el => {
25
+ el.classList.contains(`${CLASS_NAME}ssr`) && el.parentNode ?
26
+ el.parentNode.removeChild(el) : el.className.replace(classRegex, '');
27
+ });
28
+ }
29
+ };
30
+ }
31
+ /**
32
+ * Provider to remove SSR styles on the browser
33
+ */
34
+ export const BROWSER_PROVIDER = {
35
+ provide: APP_BOOTSTRAP_LISTENER,
36
+ useFactory: removeStyles,
37
+ deps: [DOCUMENT, PLATFORM_ID],
38
+ multi: true
39
+ };
40
+ export const CLASS_NAME = 'flex-layout-';
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJvd3Nlci1wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xpYnMvZmxleC1sYXlvdXQvY29yZS9icm93c2VyLXByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUNILE9BQU8sRUFBQyxzQkFBc0IsRUFBRSxXQUFXLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQ2xGLE9BQU8sRUFBQyxRQUFRLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUU1RDs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLFlBQVksQ0FBQyxTQUFtQixFQUFFLFVBQWtCO0lBQ2xFLE9BQU8sR0FBRyxFQUFFO1FBQ1YsSUFBSSxpQkFBaUIsQ0FBQyxVQUFVLENBQUMsRUFBRTtZQUNqQyxNQUFNLFFBQVEsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLFVBQVUsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUVsRixtRkFBbUY7WUFDbkYscUZBQXFGO1lBQ3JGLG9FQUFvRTtZQUNwRSxvRUFBb0U7WUFDcEUsTUFBTSxVQUFVLEdBQUcsc0JBQXNCLENBQUM7WUFDMUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsRUFBRTtnQkFDcEIsRUFBRSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsR0FBRyxVQUFVLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQztvQkFDMUQsRUFBRSxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUN6RSxDQUFDLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQyxDQUFDO0FBQ0osQ0FBQztBQUVEOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUc7SUFDOUIsT0FBTyxFQUFrQyxzQkFBc0I7SUFDL0QsVUFBVSxFQUFFLFlBQVk7SUFDeEIsSUFBSSxFQUFFLENBQUMsUUFBUSxFQUFFLFdBQVcsQ0FBQztJQUM3QixLQUFLLEVBQUUsSUFBSTtDQUNaLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5pbXBvcnQge0FQUF9CT09UU1RSQVBfTElTVEVORVIsIFBMQVRGT1JNX0lELCBJbmplY3Rpb25Ub2tlbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0RPQ1VNRU5ULCBpc1BsYXRmb3JtQnJvd3Nlcn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuLyoqXG4gKiBGaW5kIGFsbCBvZiB0aGUgc2VydmVyLWdlbmVyYXRlZCBzdHlsaW5ncywgaWYgYW55LCBhbmQgcmVtb3ZlIHRoZW1cbiAqIFRoaXMgd2lsbCBiZSBpbiB0aGUgZm9ybSBvZiBpbmxpbmUgY2xhc3NlcyBhbmQgdGhlIHN0eWxlIGJsb2NrIGluIHRoZVxuICogaGVhZCBvZiB0aGUgRE9NXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZW1vdmVTdHlsZXMoX2RvY3VtZW50OiBEb2N1bWVudCwgcGxhdGZvcm1JZDogT2JqZWN0KSB7XG4gIHJldHVybiAoKSA9PiB7XG4gICAgaWYgKGlzUGxhdGZvcm1Ccm93c2VyKHBsYXRmb3JtSWQpKSB7XG4gICAgICBjb25zdCBlbGVtZW50cyA9IEFycmF5LmZyb20oX2RvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoYFtjbGFzcyo9JHtDTEFTU19OQU1FfV1gKSk7XG5cbiAgICAgIC8vIFJlZ0V4cCBjb25zdHJ1Y3RvciBzaG91bGQgb25seSBiZSB1c2VkIGlmIHBhc3NpbmcgYSB2YXJpYWJsZSB0byB0aGUgY29uc3RydWN0b3IuXG4gICAgICAvLyBXaGVuIHVzaW5nIHN0YXRpYyByZWd1bGFyIGV4cHJlc3Npb24gaXQgaXMgbW9yZSBwZXJmb3JtYW50IHRvIHVzZSByZWcgZXhwIGxpdGVyYWwuXG4gICAgICAvLyBUaGlzIGlzIGFsc28gbmVlZGVkIHRvIHByb3ZpZGUgU2FmYXJpIDkgY29tcGF0aWJpbGl0eSwgcGxlYXNlIHNlZVxuICAgICAgLy8gaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMzc5MTk4MDIgZm9yIG1vcmUgZGlzY3Vzc2lvbi5cbiAgICAgIGNvbnN0IGNsYXNzUmVnZXggPSAvXFxiZmxleC1sYXlvdXQtLis/XFxiL2c7XG4gICAgICBlbGVtZW50cy5mb3JFYWNoKGVsID0+IHtcbiAgICAgICAgZWwuY2xhc3NMaXN0LmNvbnRhaW5zKGAke0NMQVNTX05BTUV9c3NyYCkgJiYgZWwucGFyZW50Tm9kZSA/XG4gICAgICAgICAgZWwucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChlbCkgOiBlbC5jbGFzc05hbWUucmVwbGFjZShjbGFzc1JlZ2V4LCAnJyk7XG4gICAgICB9KTtcbiAgICB9XG4gIH07XG59XG5cbi8qKlxuICogIFByb3ZpZGVyIHRvIHJlbW92ZSBTU1Igc3R5bGVzIG9uIHRoZSBicm93c2VyXG4gKi9cbmV4cG9ydCBjb25zdCBCUk9XU0VSX1BST1ZJREVSID0ge1xuICBwcm92aWRlOiA8SW5qZWN0aW9uVG9rZW48KCgpID0+IHZvaWQpW10+PkFQUF9CT09UU1RSQVBfTElTVEVORVIsXG4gIHVzZUZhY3Rvcnk6IHJlbW92ZVN0eWxlcyxcbiAgZGVwczogW0RPQ1VNRU5ULCBQTEFURk9STV9JRF0sXG4gIG11bHRpOiB0cnVlXG59O1xuXG5leHBvcnQgY29uc3QgQ0xBU1NfTkFNRSA9ICdmbGV4LWxheW91dC0nO1xuIl19
@@ -0,0 +1,10 @@
1
+ /**
2
+ * @license
3
+ * Copyright Google LLC All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.io/license
7
+ */
8
+ export * from './match-media';
9
+ export * from './mock/mock-match-media';
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9saWJzL2ZsZXgtbGF5b3V0L2NvcmUvbWF0Y2gtbWVkaWEvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUgsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyx5QkFBeUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL21hdGNoLW1lZGlhJztcbmV4cG9ydCAqIGZyb20gJy4vbW9jay9tb2NrLW1hdGNoLW1lZGlhJztcbiJdfQ==