@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 @@
1
+ {"version":3,"file":"angular-flex-layout-_private-utils-testing.mjs","sources":["../../../../projects/libs/flex-layout/_private-utils/testing/dom-tools.ts","../../../../projects/libs/flex-layout/_private-utils/testing/custom-matchers.ts","../../../../projects/libs/flex-layout/_private-utils/testing/helpers.ts","../../../../projects/libs/flex-layout/_private-utils/testing/index.ts","../../../../projects/libs/flex-layout/_private-utils/testing/angular-flex-layout-_private-utils-testing.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * Exported DOM accessor utility functions\n */\nexport const _dom = {\n hasStyle,\n getDistributedNodes,\n getShadowRoot,\n getText,\n getStyle,\n childNodes,\n childNodesAsList,\n hasClass,\n hasAttribute,\n getAttribute,\n hasShadowRoot,\n isCommentNode,\n isElementNode,\n isPresent,\n isShadowRoot,\n tagName,\n lastElementChild\n};\n\n// ******************************************************************************************\n// These functions are cloned from\n// * @angular/platform-browser/src/browser/GenericBrowserDomAdapter\n// and are to be used ONLY internally in custom-matchers.ts and Unit Tests\n// ******************************************************************************************\n\nfunction getStyle(element: any, stylename: string): string {\n return element.style[stylename];\n}\n\nfunction hasStyle(element: any,\n styleName: string,\n styleValue: string = '',\n inlineOnly = true): boolean {\n let value = getStyle(element, styleName) || '';\n if (!value && !inlineOnly) {\n // Search stylesheets\n value = typeof getComputedStyle === 'function' &&\n getComputedStyle(element).getPropertyValue(styleName) || '';\n }\n return styleValue ? value == styleValue : value.length > 0;\n}\n\nfunction getDistributedNodes(el: HTMLElement): Node[] {\n return (<any>el).getDistributedNodes();\n}\n\nfunction getShadowRoot(el: HTMLElement): DocumentFragment {\n return (<any>el).shadowRoot;\n}\n\nfunction getText(el: Node): string {\n return el.textContent || '';\n}\n\nfunction childNodesAsList(el: Node): any[] {\n const list = el.childNodes;\n const res = new Array(list.length);\n for (let i = 0; i < list.length; i++) {\n res[i] = list[i];\n }\n return res;\n}\n\nfunction hasClass(element: any, className: string): boolean {\n return element.classList.contains(className);\n}\n\nfunction hasAttribute(element: any, attributeName: string): boolean {\n return element.hasAttribute(attributeName);\n}\n\nfunction getAttribute(element: any, attributeName: string): string {\n return element.getAttribute(attributeName);\n}\n\nfunction childNodes(el: any): Node[] {\n return el.childNodes;\n}\n\nfunction hasShadowRoot(node: any): boolean {\n return isPresent(node.shadowRoot) && node instanceof HTMLElement;\n}\n\nfunction isCommentNode(node: Node): boolean {\n return node.nodeType === Node.COMMENT_NODE;\n}\n\nfunction isElementNode(node: Node): boolean {\n return node.nodeType === Node.ELEMENT_NODE;\n}\n\nfunction isShadowRoot(node: any): boolean {\n return node instanceof DocumentFragment;\n}\n\nfunction isPresent(obj: any): boolean {\n return obj != null;\n}\n\nfunction tagName(element: any): string {\n return element.tagName;\n}\n\n// ******************************************************************************************\n// These functions are part of the DOM API\n// and are to be used ONLY internally in custom-matchers.ts and Unit Tests\n// ******************************************************************************************\n\nfunction lastElementChild(element: any): Node|null {\n return element.lastElementChild;\n}\n\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\ndeclare var global: any;\nconst _global = <any>(typeof window === 'undefined' ? global : window);\n\nimport {_dom as _} from './dom-tools';\n\nimport {applyCssPrefixes, extendObject, } from '@angular/flex-layout/_private-utils';\nimport {StyleUtils} from '@angular/flex-layout/core';\n\nexport const expect: (actual: any) => NgMatchers = <any> _global.expect;\n\n/**\n * Jasmine matchers that check Angular specific conditions.\n */\nexport interface NgMatchers extends jasmine.Matchers<any> {\n /**\n * Expect the element to have exactly the given text.\n *\n * ## Example\n *\n * {@example testing/ts/matchers.ts region='toHaveText'}\n */\n toHaveText(expected: string): boolean;\n\n /**\n * Compare key:value pairs as matching EXACTLY\n */\n toHaveMap(expected: { [k: string]: string }): boolean;\n\n /**\n * Expect the element to have the given CSS class.\n *\n * ## Example\n *\n * {@example testing/ts/matchers.ts region='toHaveCssClass'}\n */\n toHaveCssClass(expected: string): boolean;\n\n /**\n * Expect the element to have the given pairs of attribute name and attribute value\n */\n toHaveAttributes(expected: { [k: string]: string }): boolean;\n\n /**\n * Expect the element to have the given CSS styles injected INLINE\n *\n * ## Example\n *\n * {@example testing/ts/matchers.ts region='toHaveStyle'}\n */\n toHaveStyle(expected: { [k: string]: string } | string): boolean;\n\n /**\n * Expect the element to have the given CSS inline OR computed styles.\n *\n * ## Example\n *\n * {@example testing/ts/matchers.ts region='toHaveStyle'}\n */\n toHaveStyle(expected: { [k: string]: string } | string): boolean;\n\n /**\n * Invert the matchers.\n */\n not: NgMatchers;\n}\n\n/**\n * NOTE: These custom JASMINE Matchers are used only\n * in the Karma/Jasmine testing for the Layout Directives\n * in `src/lib/flex/api`\n */\nexport const customMatchers: jasmine.CustomMatcherFactories = {\n\n toEqual: function (util) {\n return {\n compare: function (actual: any, expected: any) {\n return {pass: util.equals(actual, expected, [compareMap])};\n }\n };\n\n function compareMap(actual: any, expected: any) {\n if (actual instanceof Map) {\n let pass = actual.size === expected.size;\n if (pass) {\n actual.forEach((v: any, k: any) => {\n pass = pass && util.equals(v, expected.get(k));\n });\n }\n return pass;\n } else {\n return undefined;\n }\n }\n },\n\n toHaveText: function () {\n return {\n compare: function (actual: any, expectedText: string) {\n const actualText = elementText(actual);\n return {\n pass: actualText == expectedText,\n get message() {\n return 'Expected ' + actualText + ' to be equal to ' + expectedText;\n }\n };\n }\n };\n },\n\n toHaveCssClass: function () {\n return {compare: buildError(false), negativeCompare: buildError(true)};\n\n function buildError(isNot: boolean) {\n return function (actual: any, className: string) {\n return {\n pass: _.hasClass(actual, className) == !isNot,\n get message() {\n return `\n Expected ${actual.outerHTML} ${isNot ? 'not ' : ''}\n to contain the CSS class '${className}'\n `;\n }\n };\n };\n }\n },\n\n toHaveMap: function () {\n return {\n compare: function (actual: { [k: string]: string }, map: { [k: string]: string }) {\n let allPassed: boolean;\n allPassed = Object.keys(map).length !== 0;\n Object.keys(map).forEach(key => {\n allPassed = allPassed && (actual[key] === map[key]);\n });\n\n return {\n pass: allPassed,\n get message() {\n return `\n Expected ${JSON.stringify(actual)} ${!allPassed ? ' ' : 'not '} to contain the\n '${JSON.stringify(map)}'\n `;\n }\n };\n }\n };\n },\n\n toHaveAttributes: function () {\n return {\n compare: function (actual: any, map: { [k: string]: string }) {\n let allPassed: boolean;\n let attributeNames = Object.keys(map);\n allPassed = attributeNames.length !== 0;\n attributeNames.forEach(name => {\n allPassed = allPassed && _.hasAttribute(actual, name)\n && _.getAttribute(actual, name) === map[name];\n });\n return {\n pass: allPassed,\n get message() {\n return `\n Expected ${actual.outerHTML} ${allPassed ? 'not ' : ''} attributes to contain\n '${JSON.stringify(map)}'\n `;\n }\n };\n }\n };\n },\n\n /**\n * Check element's inline styles only\n */\n toHaveStyle: function () {\n return {\n compare: buildCompareStyleFunction(true)\n };\n },\n\n\n /**\n * Check element's css stylesheet only (if not present inline)\n */\n toHaveCSS: function () {\n return {\n compare: buildCompareStyleFunction(false)\n };\n }\n\n};\n\n/**\n * Curried value to function to check styles that are inline or in a stylesheet for the\n * specified DOM element.\n */\nfunction buildCompareStyleFunction(inlineOnly = true) {\n return function (actual: any, styles: { [k: string]: string } | string, styler: StyleUtils) {\n const found = {};\n const styleMap: {[k: string]: string} = {};\n\n if (typeof styles === 'string') {\n styleMap[styles] = '';\n } else {\n Object.assign(styleMap, styles);\n }\n\n let allPassed = Object.keys(styleMap).length !== 0;\n Object.keys(styleMap).forEach(prop => {\n let {elHasStyle, current} = hasPrefixedStyles(actual, prop, styleMap[prop], inlineOnly,\n styler);\n allPassed = allPassed && elHasStyle;\n if (!elHasStyle) {\n extendObject(found, current);\n }\n });\n\n return {\n pass: allPassed,\n get message() {\n const expectedValueStr = (typeof styles === 'string') ? styleMap :\n JSON.stringify(styleMap, null, 2);\n const foundValueStr = inlineOnly ? actual.outerHTML : JSON.stringify(found);\n return `\n Expected ${foundValueStr}${!allPassed ? '' : ' not'} to contain the\n CSS ${typeof styles === 'string' ? 'property' : 'styles'} '${expectedValueStr}'\n `;\n }\n };\n };\n}\n\n/**\n * Validate presence of requested style or use fallback\n * to possible `prefixed` styles. Useful when some browsers\n * (Safari, IE, etc) will use prefixed style instead of defaults.\n */\nfunction hasPrefixedStyles(actual: HTMLElement,\n key: string,\n value: string,\n inlineOnly: boolean,\n styler: StyleUtils) {\n const current = {};\n\n if (value === '*') {\n return {elHasStyle: styler.lookupStyle(actual, key, inlineOnly) !== '', current};\n }\n\n value = value.trim();\n let elHasStyle = styler.lookupStyle(actual, key, inlineOnly) === value;\n if (!elHasStyle) {\n let prefixedStyles = applyCssPrefixes({[key]: value});\n Object.keys(prefixedStyles).forEach(prop => {\n // Search for optional prefixed values\n elHasStyle = elHasStyle ||\n styler.lookupStyle(actual, prop, inlineOnly) === prefixedStyles[prop];\n });\n }\n // Return BOTH confirmation and current computed key values (if confirmation == false)\n return {elHasStyle, current};\n}\n\nfunction elementText(n: any): string {\n const hasNodes = (m: any) => {\n const children = _.childNodes(m);\n return children && children['length'];\n };\n\n if (n instanceof Array) {\n return n.map(elementText).join('');\n }\n\n if (_.isCommentNode(n)) {\n return '';\n }\n\n if (_.isElementNode(n) && _.tagName(n) == 'CONTENT') {\n return elementText(Array.prototype.slice.apply(_.getDistributedNodes(n)));\n }\n\n if (_.hasShadowRoot(n)) {\n return elementText(_.childNodesAsList(_.getShadowRoot(n)));\n }\n\n if (hasNodes(n)) {\n return elementText(_.childNodesAsList(n));\n }\n\n return _.getText(n);\n}\n\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nimport {Type, DebugElement} from '@angular/core';\nimport {ComponentFixture, TestBed} from '@angular/core/testing';\nimport {By} from '@angular/platform-browser';\nimport {extendObject} from '@angular/flex-layout/_private-utils';\n\nexport type ComponentClazzFn = () => Type<any>;\n\n/**\n * Function generator that captures a Component Type accessor and enables\n * `createTestComponent()` to be reusable for *any* captured Component class.\n */\nexport function makeCreateTestComponent(getClass: ComponentClazzFn) {\n let componentAny: Type<any>;\n\n // Return actual `createTestComponent()` function\n return function createTestComponent(template: string, styles?: any): ComponentFixture<Type<any>> {\n if (!componentAny) {\n // Defer access to Component class to enable metadata to be configured properly...\n componentAny = getClass();\n }\n return TestBed\n .overrideComponent(componentAny, {\n set: {\n template: template,\n styles: styles || [],\n }\n })\n .createComponent(componentAny);\n };\n}\n\n/**\n *\n */\nexport function expectNativeEl(fixture: ComponentFixture<any>, instanceOptions ?: any): any {\n extendObject(fixture.componentInstance, instanceOptions || {});\n fixture.detectChanges();\n return expect(fixture.debugElement.children[0].nativeElement);\n}\n\n/**\n *\n */\nexport function expectEl(debugEl: DebugElement): any {\n return expect(debugEl.nativeElement);\n}\n\n\nexport function queryFor(fixture: ComponentFixture<any>, selector: string): DebugElement[] {\n return fixture.debugElement.queryAll(By.css(selector));\n}\n\n\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './custom-matchers';\nexport * from './dom-tools';\nexport * from './helpers';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["expect","_"],"mappings":";;;;AAAA;;;;;;;AAQA;;;MAGa,IAAI,GAAG;IAClB,QAAQ;IACR,mBAAmB;IACnB,aAAa;IACb,OAAO;IACP,QAAQ;IACR,UAAU;IACV,gBAAgB;IAChB,QAAQ;IACR,YAAY;IACZ,YAAY;IACZ,aAAa;IACb,aAAa;IACb,aAAa;IACb,SAAS;IACT,YAAY;IACZ,OAAO;IACP,gBAAgB;EAChB;AAEF;AACA;AACA;AACA;AACA;AAEA,SAAS,QAAQ,CAAC,OAAY,EAAE,SAAiB;IAC/C,OAAO,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;AAClC,CAAC;AAED,SAAS,QAAQ,CAAC,OAAY,EACZ,SAAiB,EACjB,aAAqB,EAAE,EACvB,UAAU,GAAG,IAAI;IACjC,IAAI,KAAK,GAAG,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC,IAAI,EAAE,CAAC;IAC/C,IAAI,CAAC,KAAK,IAAI,CAAC,UAAU,EAAE;;QAEzB,KAAK,GAAG,OAAO,gBAAgB,KAAK,UAAU;YAC5C,gBAAgB,CAAC,OAAO,CAAC,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;KAC/D;IACD,OAAO,UAAU,GAAG,KAAK,IAAI,UAAU,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;AAC7D,CAAC;AAED,SAAS,mBAAmB,CAAC,EAAe;IAC1C,OAAa,EAAG,CAAC,mBAAmB,EAAE,CAAC;AACzC,CAAC;AAED,SAAS,aAAa,CAAC,EAAe;IACpC,OAAa,EAAG,CAAC,UAAU,CAAC;AAC9B,CAAC;AAED,SAAS,OAAO,CAAC,EAAQ;IACvB,OAAO,EAAE,CAAC,WAAW,IAAI,EAAE,CAAC;AAC9B,CAAC;AAED,SAAS,gBAAgB,CAAC,EAAQ;IAChC,MAAM,IAAI,GAAG,EAAE,CAAC,UAAU,CAAC;IAC3B,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACpC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;KAClB;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,QAAQ,CAAC,OAAY,EAAE,SAAiB;IAC/C,OAAO,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;AAC/C,CAAC;AAED,SAAS,YAAY,CAAC,OAAY,EAAE,aAAqB;IACvD,OAAO,OAAO,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;AAC7C,CAAC;AAED,SAAS,YAAY,CAAC,OAAY,EAAE,aAAqB;IACvD,OAAO,OAAO,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;AAC7C,CAAC;AAED,SAAS,UAAU,CAAC,EAAO;IACzB,OAAO,EAAE,CAAC,UAAU,CAAC;AACvB,CAAC;AAED,SAAS,aAAa,CAAC,IAAS;IAC9B,OAAO,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,YAAY,WAAW,CAAC;AACnE,CAAC;AAED,SAAS,aAAa,CAAC,IAAU;IAC/B,OAAO,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,YAAY,CAAC;AAC7C,CAAC;AAED,SAAS,aAAa,CAAC,IAAU;IAC/B,OAAO,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,YAAY,CAAC;AAC7C,CAAC;AAED,SAAS,YAAY,CAAC,IAAS;IAC7B,OAAO,IAAI,YAAY,gBAAgB,CAAC;AAC1C,CAAC;AAED,SAAS,SAAS,CAAC,GAAQ;IACzB,OAAO,GAAG,IAAI,IAAI,CAAC;AACrB,CAAC;AAED,SAAS,OAAO,CAAC,OAAY;IAC3B,OAAO,OAAO,CAAC,OAAO,CAAC;AACzB,CAAC;AAED;AACA;AACA;AACA;AAEA,SAAS,gBAAgB,CAAC,OAAY;IACpC,OAAO,OAAO,CAAC,gBAAgB,CAAC;AAClC;;AClHA,MAAM,OAAO,IAAS,OAAO,MAAM,KAAK,WAAW,GAAG,MAAM,GAAG,MAAM,CAAC,CAAC;MAO1DA,QAAM,GAAsC,OAAO,CAAC,OAAO;AA0DxE;;;;;MAKa,cAAc,GAAmC;IAE5D,OAAO,EAAE,UAAU,IAAI;QACrB,OAAO;YACL,OAAO,EAAE,UAAU,MAAW,EAAE,QAAa;gBAC3C,OAAO,EAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,UAAU,CAAC,CAAC,EAAC,CAAC;aAC5D;SACF,CAAC;QAEF,SAAS,UAAU,CAAC,MAAW,EAAE,QAAa;YAC5C,IAAI,MAAM,YAAY,GAAG,EAAE;gBACzB,IAAI,IAAI,GAAG,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,CAAC;gBACzC,IAAI,IAAI,EAAE;oBACR,MAAM,CAAC,OAAO,CAAC,CAAC,CAAM,EAAE,CAAM;wBAC5B,IAAI,GAAG,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;qBAChD,CAAC,CAAC;iBACJ;gBACD,OAAO,IAAI,CAAC;aACb;iBAAM;gBACL,OAAO,SAAS,CAAC;aAClB;SACF;KACF;IAED,UAAU,EAAE;QACV,OAAO;YACL,OAAO,EAAE,UAAU,MAAW,EAAE,YAAoB;gBAClD,MAAM,UAAU,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;gBACvC,OAAO;oBACL,IAAI,EAAE,UAAU,IAAI,YAAY;oBAChC,IAAI,OAAO;wBACT,OAAO,WAAW,GAAG,UAAU,GAAG,kBAAkB,GAAG,YAAY,CAAC;qBACrE;iBACF,CAAC;aACH;SACF,CAAC;KACH;IAED,cAAc,EAAE;QACd,OAAO,EAAC,OAAO,EAAE,UAAU,CAAC,KAAK,CAAC,EAAE,eAAe,EAAE,UAAU,CAAC,IAAI,CAAC,EAAC,CAAC;QAEvE,SAAS,UAAU,CAAC,KAAc;YAChC,OAAO,UAAU,MAAW,EAAE,SAAiB;gBAC7C,OAAO;oBACL,IAAI,EAAEC,IAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,IAAI,CAAC,KAAK;oBAC7C,IAAI,OAAO;wBACT,OAAO;yBACM,MAAM,CAAC,SAAS,IAAI,KAAK,GAAG,MAAM,GAAG,EAAE;0CACtB,SAAS;aACtC,CAAC;qBACH;iBACF,CAAC;aACH,CAAC;SACH;KACF;IAED,SAAS,EAAE;QACT,OAAO;YACL,OAAO,EAAE,UAAU,MAA+B,EAAE,GAA4B;gBAC9E,IAAI,SAAkB,CAAC;gBACvB,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;gBAC1C,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG;oBAC1B,SAAS,GAAG,SAAS,KAAK,MAAM,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;iBACrD,CAAC,CAAC;gBAEH,OAAO;oBACL,IAAI,EAAE,SAAS;oBACf,IAAI,OAAO;wBACT,OAAO;yBACM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,GAAG,GAAG,GAAG,MAAM;iBAC3D,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;aACvB,CAAC;qBACH;iBACF,CAAC;aACH;SACF,CAAC;KACH;IAED,gBAAgB,EAAE;QAChB,OAAO;YACL,OAAO,EAAE,UAAU,MAAW,EAAE,GAA4B;gBAC1D,IAAI,SAAkB,CAAC;gBACvB,IAAI,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACtC,SAAS,GAAG,cAAc,CAAC,MAAM,KAAK,CAAC,CAAC;gBACxC,cAAc,CAAC,OAAO,CAAC,IAAI;oBACzB,SAAS,GAAG,SAAS,IAAIA,IAAC,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC;2BAC9CA,IAAC,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC;iBACnD,CAAC,CAAC;gBACH,OAAO;oBACL,IAAI,EAAE,SAAS;oBACf,IAAI,OAAO;wBACT,OAAO;yBACM,MAAM,CAAC,SAAS,IAAI,SAAS,GAAG,MAAM,GAAG,EAAE;iBACnD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;aACvB,CAAC;qBACH;iBACF,CAAC;aACH;SACF,CAAC;KACH;;;;IAKD,WAAW,EAAE;QACX,OAAO;YACL,OAAO,EAAE,yBAAyB,CAAC,IAAI,CAAC;SACzC,CAAC;KACH;;;;IAMD,SAAS,EAAE;QACT,OAAO;YACL,OAAO,EAAE,yBAAyB,CAAC,KAAK,CAAC;SAC1C,CAAC;KACH;EAED;AAEF;;;;AAIA,SAAS,yBAAyB,CAAC,UAAU,GAAG,IAAI;IAClD,OAAO,UAAU,MAAW,EAAE,MAAwC,EAAE,MAAkB;QACxF,MAAM,KAAK,GAAG,EAAE,CAAC;QACjB,MAAM,QAAQ,GAA0B,EAAE,CAAC;QAE3C,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;YAC9B,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;SACvB;aAAM;YACL,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;SACjC;QAED,IAAI,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;QACnD,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,IAAI;YAChC,IAAI,EAAC,UAAU,EAAE,OAAO,EAAC,GAAG,iBAAiB,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,EACpF,MAAM,CAAC,CAAC;YACV,SAAS,GAAG,SAAS,IAAI,UAAU,CAAC;YACpC,IAAI,CAAC,UAAU,EAAE;gBACf,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;aAC9B;SACF,CAAC,CAAC;QAEH,OAAO;YACL,IAAI,EAAE,SAAS;YACf,IAAI,OAAO;gBACT,MAAM,gBAAgB,GAAG,CAAC,OAAO,MAAM,KAAK,QAAQ,IAAI,QAAQ;oBAC5D,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBACtC,MAAM,aAAa,GAAG,UAAU,GAAG,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;gBAC5E,OAAO;qBACM,aAAa,GAAG,CAAC,SAAS,GAAG,EAAE,GAAG,MAAM;gBAC7C,OAAO,MAAM,KAAK,QAAQ,GAAG,UAAU,GAAG,QAAQ,KAAK,gBAAgB;SAC9E,CAAC;aACH;SACF,CAAC;KACH,CAAC;AACJ,CAAC;AAED;;;;;AAKA,SAAS,iBAAiB,CAAC,MAAmB,EACnB,GAAW,EACX,KAAa,EACb,UAAmB,EACnB,MAAkB;IAC3C,MAAM,OAAO,GAAG,EAAE,CAAC;IAEnB,IAAI,KAAK,KAAK,GAAG,EAAE;QACjB,OAAO,EAAC,UAAU,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,EAAE,UAAU,CAAC,KAAK,EAAE,EAAE,OAAO,EAAC,CAAC;KAClF;IAED,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IACrB,IAAI,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,EAAE,UAAU,CAAC,KAAK,KAAK,CAAC;IACvE,IAAI,CAAC,UAAU,EAAE;QACf,IAAI,cAAc,GAAG,gBAAgB,CAAC,EAAC,CAAC,GAAG,GAAG,KAAK,EAAC,CAAC,CAAC;QACtD,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,IAAI;;YAEtC,UAAU,GAAG,UAAU;gBACrB,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,EAAE,UAAU,CAAC,KAAK,cAAc,CAAC,IAAI,CAAC,CAAC;SACzE,CAAC,CAAC;KACJ;;IAED,OAAO,EAAC,UAAU,EAAE,OAAO,EAAC,CAAC;AAC/B,CAAC;AAED,SAAS,WAAW,CAAC,CAAM;IACzB,MAAM,QAAQ,GAAG,CAAC,CAAM;QACtB,MAAM,QAAQ,GAAGA,IAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QACjC,OAAO,QAAQ,IAAI,QAAQ,CAAC,QAAQ,CAAC,CAAC;KACvC,CAAC;IAEF,IAAI,CAAC,YAAY,KAAK,EAAE;QACtB,OAAO,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;KACpC;IAED,IAAIA,IAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE;QACtB,OAAO,EAAE,CAAC;KACX;IAED,IAAIA,IAAC,CAAC,aAAa,CAAC,CAAC,CAAC,IAAIA,IAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,SAAS,EAAE;QACnD,OAAO,WAAW,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAACA,IAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KAC3E;IAED,IAAIA,IAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE;QACtB,OAAO,WAAW,CAACA,IAAC,CAAC,gBAAgB,CAACA,IAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KAC5D;IAED,IAAI,QAAQ,CAAC,CAAC,CAAC,EAAE;QACf,OAAO,WAAW,CAACA,IAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;KAC3C;IAED,OAAOA,IAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AACtB;;AC3RA;;;;SAIgB,uBAAuB,CAAC,QAA0B;IAChE,IAAI,YAAuB,CAAC;;IAG5B,OAAO,SAAS,mBAAmB,CAAC,QAAgB,EAAE,MAAY;QAChE,IAAI,CAAC,YAAY,EAAE;;YAEjB,YAAY,GAAG,QAAQ,EAAE,CAAC;SAC3B;QACD,OAAO,OAAO;aACT,iBAAiB,CAAC,YAAY,EAAE;YAC/B,GAAG,EAAE;gBACH,QAAQ,EAAE,QAAQ;gBAClB,MAAM,EAAE,MAAM,IAAI,EAAE;aACrB;SACF,CAAC;aACD,eAAe,CAAC,YAAY,CAAC,CAAC;KACpC,CAAC;AACJ,CAAC;AAED;;;SAGgB,cAAc,CAAC,OAA8B,EAAE,eAAsB;IACnF,YAAY,CAAC,OAAO,CAAC,iBAAiB,EAAE,eAAe,IAAI,EAAE,CAAC,CAAC;IAC/D,OAAO,CAAC,aAAa,EAAE,CAAC;IACxB,OAAO,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;AAChE,CAAC;AAED;;;SAGgB,QAAQ,CAAC,OAAqB;IAC5C,OAAO,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;AACvC,CAAC;SAGe,QAAQ,CAAC,OAA8B,EAAE,QAAgB;IACvE,OAAO,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;AACzD;;ACzDA;;;;;;;;ACAA;;;;;;"}
@@ -0,0 +1,193 @@
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
+ * Applies CSS prefixes to appropriate style keys.
10
+ *
11
+ * Note: `-ms-`, `-moz` and `-webkit-box` are no longer supported. e.g.
12
+ * {
13
+ * display: -webkit-flex; NEW - Safari 6.1+. iOS 7.1+, BB10
14
+ * display: flex; NEW, Spec - Firefox, Chrome, Opera
15
+ * // display: -webkit-box; OLD - iOS 6-, Safari 3.1-6, BB7
16
+ * // display: -ms-flexbox; TWEENER - IE 10
17
+ * // display: -moz-flexbox; OLD - Firefox
18
+ * }
19
+ */
20
+ function applyCssPrefixes(target) {
21
+ for (let key in target) {
22
+ let value = target[key] || '';
23
+ switch (key) {
24
+ case 'display':
25
+ if (value === 'flex') {
26
+ target['display'] = [
27
+ '-webkit-flex',
28
+ 'flex'
29
+ ];
30
+ }
31
+ else if (value === 'inline-flex') {
32
+ target['display'] = [
33
+ '-webkit-inline-flex',
34
+ 'inline-flex'
35
+ ];
36
+ }
37
+ else {
38
+ target['display'] = value;
39
+ }
40
+ break;
41
+ case 'align-items':
42
+ case 'align-self':
43
+ case 'align-content':
44
+ case 'flex':
45
+ case 'flex-basis':
46
+ case 'flex-flow':
47
+ case 'flex-grow':
48
+ case 'flex-shrink':
49
+ case 'flex-wrap':
50
+ case 'justify-content':
51
+ target['-webkit-' + key] = value;
52
+ break;
53
+ case 'flex-direction':
54
+ value = value || 'row';
55
+ target['-webkit-flex-direction'] = value;
56
+ target['flex-direction'] = value;
57
+ break;
58
+ case 'order':
59
+ target['order'] = target['-webkit-' + key] = isNaN(+value) ? '0' : value;
60
+ break;
61
+ }
62
+ }
63
+ return target;
64
+ }
65
+
66
+ /**
67
+ * @license
68
+ * Copyright Google LLC All Rights Reserved.
69
+ *
70
+ * Use of this source code is governed by an MIT-style license that can be
71
+ * found in the LICENSE file at https://angular.io/license
72
+ */
73
+ const INLINE = 'inline';
74
+ const LAYOUT_VALUES = ['row', 'column', 'row-reverse', 'column-reverse'];
75
+ /**
76
+ * Validate the direction|'direction wrap' value and then update the host's inline flexbox styles
77
+ */
78
+ function buildLayoutCSS(value) {
79
+ let [direction, wrap, isInline] = validateValue(value);
80
+ return buildCSS(direction, wrap, isInline);
81
+ }
82
+ /**
83
+ * Validate the value to be one of the acceptable value options
84
+ * Use default fallback of 'row'
85
+ */
86
+ function validateValue(value) {
87
+ var _a;
88
+ value = (_a = value === null || value === void 0 ? void 0 : value.toLowerCase()) !== null && _a !== void 0 ? _a : '';
89
+ let [direction, wrap, inline] = value.split(' ');
90
+ // First value must be the `flex-direction`
91
+ if (!LAYOUT_VALUES.find(x => x === direction)) {
92
+ direction = LAYOUT_VALUES[0];
93
+ }
94
+ if (wrap === INLINE) {
95
+ wrap = (inline !== INLINE) ? inline : '';
96
+ inline = INLINE;
97
+ }
98
+ return [direction, validateWrapValue(wrap), !!inline];
99
+ }
100
+ /**
101
+ * Determine if the validated, flex-direction value specifies
102
+ * a horizontal/row flow.
103
+ */
104
+ function isFlowHorizontal(value) {
105
+ let [flow,] = validateValue(value);
106
+ return flow.indexOf('row') > -1;
107
+ }
108
+ /**
109
+ * Convert layout-wrap='<value>' to expected flex-wrap style
110
+ */
111
+ function validateWrapValue(value) {
112
+ if (!!value) {
113
+ switch (value.toLowerCase()) {
114
+ case 'reverse':
115
+ case 'wrap-reverse':
116
+ case 'reverse-wrap':
117
+ value = 'wrap-reverse';
118
+ break;
119
+ case 'no':
120
+ case 'none':
121
+ case 'nowrap':
122
+ value = 'nowrap';
123
+ break;
124
+ // All other values fallback to 'wrap'
125
+ default:
126
+ value = 'wrap';
127
+ break;
128
+ }
129
+ }
130
+ return value;
131
+ }
132
+ /**
133
+ * Build the CSS that should be assigned to the element instance
134
+ * BUG:
135
+ * 1) min-height on a column flex container won’t apply to its flex item children in IE 10-11.
136
+ * Use height instead if possible; height : <xxx>vh;
137
+ *
138
+ * This way any padding or border specified on the child elements are
139
+ * laid out and drawn inside that element's specified width and height.
140
+ */
141
+ function buildCSS(direction, wrap = null, inline = false) {
142
+ return {
143
+ display: inline ? 'inline-flex' : 'flex',
144
+ 'box-sizing': 'border-box',
145
+ 'flex-direction': direction,
146
+ 'flex-wrap': wrap || null,
147
+ };
148
+ }
149
+
150
+ /**
151
+ * @license
152
+ * Copyright Google LLC All Rights Reserved.
153
+ *
154
+ * Use of this source code is governed by an MIT-style license that can be
155
+ * found in the LICENSE file at https://angular.io/license
156
+ */
157
+ /**
158
+ * Extends an object with the *enumerable* and *own* properties of one or more source objects,
159
+ * similar to Object.assign.
160
+ *
161
+ * @param dest The object which will have properties copied to it.
162
+ * @param sources The source objects from which properties will be copied.
163
+ */
164
+ function extendObject(dest, ...sources) {
165
+ if (dest == null) {
166
+ throw TypeError('Cannot convert undefined or null to object');
167
+ }
168
+ for (let source of sources) {
169
+ if (source != null) {
170
+ for (let key in source) {
171
+ if (source.hasOwnProperty(key)) {
172
+ dest[key] = source[key];
173
+ }
174
+ }
175
+ }
176
+ }
177
+ return dest;
178
+ }
179
+
180
+ /**
181
+ * @license
182
+ * Copyright Google LLC All Rights Reserved.
183
+ *
184
+ * Use of this source code is governed by an MIT-style license that can be
185
+ * found in the LICENSE file at https://angular.io/license
186
+ */
187
+
188
+ /**
189
+ * Generated bundle index. Do not edit.
190
+ */
191
+
192
+ export { INLINE, LAYOUT_VALUES, applyCssPrefixes, buildLayoutCSS, extendObject, isFlowHorizontal, validateValue, validateWrapValue };
193
+ //# sourceMappingURL=angular-flex-layout-_private-utils.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"angular-flex-layout-_private-utils.mjs","sources":["../../../../projects/libs/flex-layout/_private-utils/auto-prefixer.ts","../../../../projects/libs/flex-layout/_private-utils/layout-validator.ts","../../../../projects/libs/flex-layout/_private-utils/object-extend.ts","../../../../projects/libs/flex-layout/_private-utils/index.ts","../../../../projects/libs/flex-layout/_private-utils/angular-flex-layout-_private-utils.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Applies CSS prefixes to appropriate style keys.\n *\n * Note: `-ms-`, `-moz` and `-webkit-box` are no longer supported. e.g.\n * {\n * display: -webkit-flex; NEW - Safari 6.1+. iOS 7.1+, BB10\n * display: flex; NEW, Spec - Firefox, Chrome, Opera\n * // display: -webkit-box; OLD - iOS 6-, Safari 3.1-6, BB7\n * // display: -ms-flexbox; TWEENER - IE 10\n * // display: -moz-flexbox; OLD - Firefox\n * }\n */\nexport function applyCssPrefixes(target: {[key: string]: any | null}) {\n for (let key in target) {\n let value = target[key] || '';\n\n switch (key) {\n case 'display':\n if (value === 'flex') {\n target['display'] = [\n '-webkit-flex',\n 'flex'\n ];\n } else if (value === 'inline-flex') {\n target['display'] = [\n '-webkit-inline-flex',\n 'inline-flex'\n ];\n } else {\n target['display'] = value;\n }\n break;\n\n case 'align-items':\n case 'align-self':\n case 'align-content':\n case 'flex':\n case 'flex-basis':\n case 'flex-flow':\n case 'flex-grow':\n case 'flex-shrink':\n case 'flex-wrap':\n case 'justify-content':\n target['-webkit-' + key] = value;\n break;\n\n case 'flex-direction':\n value = value || 'row';\n target['-webkit-flex-direction'] = value;\n target['flex-direction'] = value;\n break;\n\n case 'order':\n target['order'] = target['-webkit-' + key] = isNaN(+value) ? '0' : value;\n break;\n }\n }\n return target;\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nexport const INLINE = 'inline';\nexport const LAYOUT_VALUES = ['row', 'column', 'row-reverse', 'column-reverse'];\n\n/**\n * Validate the direction|'direction wrap' value and then update the host's inline flexbox styles\n */\nexport function buildLayoutCSS(value: string) {\n let [direction, wrap, isInline] = validateValue(value);\n return buildCSS(direction, wrap, isInline);\n}\n\n/**\n * Validate the value to be one of the acceptable value options\n * Use default fallback of 'row'\n */\nexport function validateValue(value: string): [string, string, boolean] {\n value = value?.toLowerCase() ?? '';\n let [direction, wrap, inline] = value.split(' ');\n\n // First value must be the `flex-direction`\n if (!LAYOUT_VALUES.find(x => x === direction)) {\n direction = LAYOUT_VALUES[0];\n }\n\n if (wrap === INLINE) {\n wrap = (inline !== INLINE) ? inline : '';\n inline = INLINE;\n }\n\n return [direction, validateWrapValue(wrap), !!inline];\n}\n\n/**\n * Determine if the validated, flex-direction value specifies\n * a horizontal/row flow.\n */\nexport function isFlowHorizontal(value: string): boolean {\n let [flow, ] = validateValue(value);\n return flow.indexOf('row') > -1;\n}\n\n/**\n * Convert layout-wrap='<value>' to expected flex-wrap style\n */\nexport function validateWrapValue(value: string) {\n if (!!value) {\n switch (value.toLowerCase()) {\n case 'reverse':\n case 'wrap-reverse':\n case 'reverse-wrap':\n value = 'wrap-reverse';\n break;\n\n case 'no':\n case 'none':\n case 'nowrap':\n value = 'nowrap';\n break;\n\n // All other values fallback to 'wrap'\n default:\n value = 'wrap';\n break;\n }\n }\n return value;\n}\n\n/**\n * Build the CSS that should be assigned to the element instance\n * BUG:\n * 1) min-height on a column flex container won’t apply to its flex item children in IE 10-11.\n * Use height instead if possible; height : <xxx>vh;\n *\n * This way any padding or border specified on the child elements are\n * laid out and drawn inside that element's specified width and height.\n */\nfunction buildCSS(direction: string, wrap: string | null = null, inline = false) {\n return {\n display: inline ? 'inline-flex' : 'flex',\n 'box-sizing': 'border-box',\n 'flex-direction': direction,\n 'flex-wrap': wrap || null,\n };\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Extends an object with the *enumerable* and *own* properties of one or more source objects,\n * similar to Object.assign.\n *\n * @param dest The object which will have properties copied to it.\n * @param sources The source objects from which properties will be copied.\n */\nexport function extendObject(dest: any, ...sources: any[]): any {\n if (dest == null) {\n throw TypeError('Cannot convert undefined or null to object');\n }\n\n for (let source of sources) {\n if (source != null) {\n for (let key in source) {\n if (source.hasOwnProperty(key)) {\n dest[key] = source[key];\n }\n }\n }\n }\n\n return dest;\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './auto-prefixer';\nexport * from './layout-validator';\nexport * from './object-extend';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}