@1money/component-ui 0.0.95-alpha.1 → 0.0.95-alpha.3

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 (117) hide show
  1. package/es/business/Dialog/BaseDialog/BaseDialog.d.ts +0 -1
  2. package/es/business/Dialog/BaseDialog/BaseDialog.js +43 -66
  3. package/es/business/Dialog/BaseDialog/constants.d.ts +7 -8
  4. package/es/business/Dialog/BaseDialog/constants.js +8 -9
  5. package/es/business/Dialog/variants/LoadingDialog.js +3 -3
  6. package/es/business/{PageForm → Form/PageForm}/PageForm.d.ts +1 -1
  7. package/es/business/Form/PageForm/PageForm.js +97 -0
  8. package/es/business/Form/PageForm/index.js +5 -0
  9. package/es/business/{PageForm → Form/PageForm}/interface.d.ts +5 -5
  10. package/es/business/Form/PageForm/interface.js +2 -0
  11. package/es/business/Form/ResultForm/ResultForm.d.ts +2 -0
  12. package/es/business/Form/ResultForm/ResultForm.js +38 -0
  13. package/es/business/Form/ResultForm/index.d.ts +4 -0
  14. package/es/business/Form/ResultForm/index.js +5 -0
  15. package/es/business/Form/ResultForm/interface.d.ts +10 -0
  16. package/es/business/Form/ResultForm/interface.js +2 -0
  17. package/es/business/Form/index.d.ts +3 -0
  18. package/es/business/Form/index.js +15 -0
  19. package/es/business/Form/variants/ExpiredForm.d.ts +3 -0
  20. package/es/business/Form/variants/ExpiredForm.js +21 -0
  21. package/es/business/Form/variants/FailureForm.d.ts +3 -0
  22. package/es/business/Form/variants/FailureForm.js +20 -0
  23. package/es/business/Form/variants/PendingForm.d.ts +3 -0
  24. package/es/business/Form/variants/PendingForm.js +20 -0
  25. package/es/business/Form/variants/SuccessForm.d.ts +3 -0
  26. package/es/business/Form/variants/SuccessForm.js +20 -0
  27. package/es/business/Form/variants/index.d.ts +8 -0
  28. package/es/business/Form/variants/index.js +12 -0
  29. package/es/business/index.d.ts +1 -1
  30. package/es/business/index.js +2 -2
  31. package/es/components/ActionBar/ActionBar.js +3 -4
  32. package/es/components/ActionBar/interface.d.ts +7 -2
  33. package/es/components/Dialog/interface.d.ts +10 -4
  34. package/es/components/FormLayout/interface.d.ts +6 -1
  35. package/es/components/PanelLayout/PanelLayout.d.ts +3 -0
  36. package/es/components/PanelLayout/PanelLayout.js +162 -0
  37. package/es/components/PanelLayout/constants.d.ts +60 -0
  38. package/es/components/PanelLayout/constants.js +48 -0
  39. package/es/components/PanelLayout/index.d.ts +6 -0
  40. package/es/components/PanelLayout/index.js +6 -0
  41. package/es/components/PanelLayout/interface.d.ts +73 -0
  42. package/es/components/PanelLayout/interface.js +2 -0
  43. package/es/components/PanelLayout/style/PanelLayout.css +50 -0
  44. package/es/components/PanelLayout/style/css.js +2 -0
  45. package/es/components/PanelLayout/style/index.d.ts +1 -0
  46. package/es/components/PanelLayout/style/index.js +2 -0
  47. package/es/index.css +1 -1
  48. package/es/index.d.ts +2 -0
  49. package/es/index.js +2 -1
  50. package/lib/business/Dialog/BaseDialog/BaseDialog.d.ts +0 -1
  51. package/lib/business/Dialog/BaseDialog/BaseDialog.js +42 -65
  52. package/lib/business/Dialog/BaseDialog/constants.d.ts +7 -8
  53. package/lib/business/Dialog/BaseDialog/constants.js +9 -10
  54. package/lib/business/Dialog/variants/LoadingDialog.js +3 -3
  55. package/lib/business/{PageForm → Form/PageForm}/PageForm.d.ts +1 -1
  56. package/lib/business/Form/PageForm/PageForm.js +103 -0
  57. package/lib/business/Form/PageForm/index.js +30 -0
  58. package/lib/business/{PageForm → Form/PageForm}/interface.d.ts +5 -5
  59. package/lib/business/Form/PageForm/interface.js +6 -0
  60. package/lib/business/Form/ResultForm/ResultForm.d.ts +2 -0
  61. package/lib/business/Form/ResultForm/ResultForm.js +44 -0
  62. package/lib/business/Form/ResultForm/index.d.ts +4 -0
  63. package/lib/business/Form/ResultForm/index.js +30 -0
  64. package/lib/business/Form/ResultForm/interface.d.ts +10 -0
  65. package/lib/business/Form/ResultForm/interface.js +6 -0
  66. package/lib/business/Form/index.d.ts +3 -0
  67. package/lib/business/Form/index.js +39 -0
  68. package/lib/business/Form/variants/ExpiredForm.d.ts +3 -0
  69. package/lib/business/Form/variants/ExpiredForm.js +27 -0
  70. package/lib/business/Form/variants/FailureForm.d.ts +3 -0
  71. package/lib/business/Form/variants/FailureForm.js +26 -0
  72. package/lib/business/Form/variants/PendingForm.d.ts +3 -0
  73. package/lib/business/Form/variants/PendingForm.js +26 -0
  74. package/lib/business/Form/variants/SuccessForm.d.ts +3 -0
  75. package/lib/business/Form/variants/SuccessForm.js +26 -0
  76. package/lib/business/Form/variants/index.d.ts +8 -0
  77. package/lib/business/Form/variants/index.js +34 -0
  78. package/lib/business/index.d.ts +1 -1
  79. package/lib/business/index.js +5 -5
  80. package/lib/components/ActionBar/ActionBar.js +3 -4
  81. package/lib/components/ActionBar/interface.d.ts +7 -2
  82. package/lib/components/Dialog/interface.d.ts +10 -4
  83. package/lib/components/FormLayout/interface.d.ts +6 -1
  84. package/lib/components/PanelLayout/PanelLayout.d.ts +3 -0
  85. package/lib/components/PanelLayout/PanelLayout.js +171 -0
  86. package/lib/components/PanelLayout/constants.d.ts +60 -0
  87. package/lib/components/PanelLayout/constants.js +54 -0
  88. package/lib/components/PanelLayout/index.d.ts +6 -0
  89. package/lib/components/PanelLayout/index.js +52 -0
  90. package/lib/components/PanelLayout/interface.d.ts +73 -0
  91. package/lib/components/PanelLayout/interface.js +6 -0
  92. package/lib/components/PanelLayout/style/PanelLayout.css +50 -0
  93. package/lib/components/PanelLayout/style/css.js +4 -0
  94. package/lib/components/PanelLayout/style/index.d.ts +1 -0
  95. package/lib/components/PanelLayout/style/index.js +4 -0
  96. package/lib/index.css +1 -1
  97. package/lib/index.d.ts +2 -0
  98. package/lib/index.js +14 -1
  99. package/package.json +29 -4
  100. package/scripts/mcp-server/examples.generated.json +42 -0
  101. package/scripts/mcp-server/index.generated.json +236 -3
  102. package/es/business/Dialog/BaseDialog/style/BaseDialog.css +0 -72
  103. package/es/business/Dialog/BaseDialog/style/css.js +0 -2
  104. package/es/business/Dialog/BaseDialog/style/index.d.ts +0 -1
  105. package/es/business/Dialog/BaseDialog/style/index.js +0 -2
  106. package/es/business/PageForm/PageForm.js +0 -97
  107. package/es/business/PageForm/index.js +0 -5
  108. package/es/business/PageForm/interface.js +0 -2
  109. package/lib/business/Dialog/BaseDialog/style/BaseDialog.css +0 -72
  110. package/lib/business/Dialog/BaseDialog/style/css.js +0 -4
  111. package/lib/business/Dialog/BaseDialog/style/index.d.ts +0 -1
  112. package/lib/business/Dialog/BaseDialog/style/index.js +0 -4
  113. package/lib/business/PageForm/PageForm.js +0 -103
  114. package/lib/business/PageForm/index.js +0 -30
  115. package/lib/business/PageForm/interface.js +0 -6
  116. /package/es/business/{PageForm → Form/PageForm}/index.d.ts +0 -0
  117. /package/lib/business/{PageForm → Form/PageForm}/index.d.ts +0 -0
@@ -50,12 +50,11 @@ var Footnote = function Footnote(_ref) {
50
50
  justify: 'center',
51
51
  gap: 4,
52
52
  children: [prompt && (0, _jsxRuntime.jsx)(_Typography.Typography.Body, {
53
- size: 'md',
54
- strong: true,
53
+ size: 'sm',
55
54
  color: 'default-tertiary',
56
55
  children: prompt
57
56
  }), action && (0, _jsxRuntime.jsx)(_Typography.Typography.Link, {
58
- size: 'md',
57
+ size: 'sm',
59
58
  color: 'brand',
60
59
  role: 'button',
61
60
  tabIndex: 0,
@@ -123,4 +122,4 @@ var ActionBarBase = function ActionBarBase(_ref2) {
123
122
  });
124
123
  };
125
124
  var ActionBar = exports.ActionBar = /*#__PURE__*/(0, _react.memo)(ActionBarBase);
126
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvQWN0aW9uQmFyL0FjdGlvbkJhci5qcyIsImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvQWN0aW9uQmFyL0FjdGlvbkJhci50c3giXSwibmFtZXMiOlsiX2pzeFJ1bnRpbWUiLCJyZXF1aXJlIiwiX3JlYWN0IiwiX0J1dHRvbiIsIl9EaXZpZGVyIiwiX0ZsZXgiLCJfVHlwb2dyYXBoeSIsIl9jbGFzc25hbWVzIiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJfY29uc3RhbnRzIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiaGFzIiwiZ2V0IiwibiIsIl9fcHJvdG9fXyIsImEiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0IiwiQUNUSVZBVElPTl9LRVlTIiwicmVuZGVyQWN0aW9uIiwiYWN0aW9uIiwiZmFsbGJhY2tMYWJlbCIsImRlZmF1bHRDb2xvciIsInNpemUiLCJfYSIsIl9iIiwiX2pzeCIsIkJ1dHRvbiIsInZhcmlhbnQiLCJjb2xvciIsImljb25TdGFydCIsImljb24iLCJsb2FkaW5nIiwiZGlzYWJsZWQiLCJvbkNsaWNrIiwidHlwZSIsImZvcm0iLCJjaGlsZHJlbiIsImxhYmVsIiwiRm9vdG5vdGUiLCJfcmVmIiwicHJvbXB0IiwiZGl2aWRlZCIsImNsYXNzZXMiLCJoYW5kbGVLZXlEb3duIiwiZXZlbnQiLCJpbmNsdWRlcyIsImtleSIsInByZXZlbnREZWZhdWx0IiwiX2pzeHMiLCJjbGFzc05hbWUiLCJBQ1RJT05fQkFSX1NMT1QiLCJmb290bm90ZSIsIkRpdmlkZXIiLCJGbGV4IiwiYWxpZ24iLCJqdXN0aWZ5IiwiZ2FwIiwiVHlwb2dyYXBoeSIsIkJvZHkiLCJzdHJvbmciLCJMaW5rIiwicm9sZSIsInRhYkluZGV4Iiwib25LZXlEb3duIiwiQWN0aW9uQmFyQmFzZSIsIl9yZWYyIiwiX3JlZjIkbGF5b3V0IiwibGF5b3V0IiwiX3JlZjIkZGlyZWN0aW9uIiwiZGlyZWN0aW9uIiwicHJpbWFyeSIsInByaW1hcnlTbG90Iiwic2Vjb25kYXJ5IiwiX3JlZjIkcHJlZml4Q2xzIiwicHJlZml4Q2xzIiwiQUNUSU9OX0JBUl9QUkVGSVgiLCJfYyIsIl9kIiwiY2xhc3NuYW1lcyIsInZlcnRpY2FsIiwiYnV0dG9uU2l6ZSIsIkFDVElPTl9CQVJfQlVUVE9OX1NJWkUiLCJpdGVtcyIsIm9yZGVyIiwibm9kZSIsIkFDVElPTl9CQVJfREVGQVVMVFMiLCJzZWNvbmRhcnlMYWJlbCIsInNlY29uZGFyeUNvbG9yIiwicHJpbWFyeUxhYmVsIiwicHJpbWFyeUNvbG9yIiwidW5kZWZpbmVkIiwiZmlsdGVyIiwiaXRlbSIsIkJvb2xlYW4iLCJzb3J0IiwiYiIsImxlbmd0aCIsImpvaW5DbHMiLCJhY3Rpb25zIiwibWFwIiwiRnJhZ21lbnQiLCJhc3NpZ24iLCJBY3Rpb25CYXIiLCJleHBvcnRzIiwibWVtbyJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBLElBQUFBLFdBQUEsR0FBQUMsT0FBQTtBQ0FBLElBQUFDLE1BQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLE9BQUEsR0FBQUYsT0FBQTtBQUNBLElBQUFHLFFBQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLEtBQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLFdBQUEsR0FBQUwsT0FBQTtBQUNBLElBQUFNLFdBQUEsR0FBQUMsdUJBQUEsQ0FBQVAsT0FBQTtBQUNBLElBQUFRLFVBQUEsR0FBQVIsT0FBQTtBQVVBQSxPQUFBO0FBQWlCLFNBQUFTLHlCQUFBQyxDQUFBLDZCQUFBQyxPQUFBLG1CQUFBQyxDQUFBLE9BQUFELE9BQUEsSUFBQUUsQ0FBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLHlCQUFBQyxDQUFBLFdBQUFBLENBQUEsR0FBQUcsQ0FBQSxHQUFBRCxDQUFBLEtBQUFG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UUFBUSxFQUFBLElBQUE7SUFDUnZCLEdBQUcsRUFBRSxFQUFFO0lBQ1BQLFNBQVMsRUFBRSxJQUFBZ0QsbUJBQU8sRUFBQ3ZELE9BQU8sQ0FBQSxDQUFFLEVBQUVBLE9BQU8sQ0FBQ3lCLE1BQU0sQ0FBQyxFQUFFekIsT0FBTyxDQUFDMkIsU0FBUyxDQUFDLEVBQUVwQixTQUFTLENBQUM7SUFBQWIsUUFBQSxFQUFBLENBRTVFOEMsS0FBSyxDQUFDYyxNQUFNLEdBQUcsQ0FBQyxJQUNmLElBQUF2RSxlQUFBLEVBQUM0QixVQUFJLEVBQUE7TUFBQzBCLFFBQVEsRUFBRUEsUUFBUTtNQUFFOUIsU0FBUyxFQUFFUCxPQUFPLENBQUNRLDBCQUFlLENBQUNnRCxPQUFPLENBQUM7TUFBQTlELFFBQUEsRUFDbEU4QyxLQUFLLENBQUNpQixHQUFHLENBQUMsVUFBQ1AsSUFBSTtRQUFBLE9BQ2QsSUFBQW5FLGVBQUEsRUFBQzJFLGVBQVEsRUFBQTtVQUFBaEUsUUFBQSxFQUFpQndELElBQUksQ0FBQ1I7UUFBSSxDQUFBLEVBQXBCUSxJQUFJLENBQUM5QyxHQUFHLENBQXdCO01BQUEsQ0FDaEQ7SUFBQyxDQUFBLENBRUwsRUFDQUssUUFBUSxJQUFJLElBQUExQixlQUFBLEVBQUNhLFFBQVEsRUFBQTdCLE1BQUEsQ0FBQTRGLE1BQUEsQ0FBQSxDQUFBLENBQUEsRUFBS2xELFFBQVEsRUFBQTtNQUFFVCxPQUFPLEVBQUVBO0lBQU8sQ0FBQSxDQUFBLENBQUk7RUFBQSxDQUFBLENBQ3BEO0FBRVgsQ0FBQztBQUVNLElBQU00RCxTQUFTLEdBQUFDLE9BQUEsQ0FBQUQsU0FBQSxnQkFBRyxJQUFBRSxXQUFJLEVBQUN4QyxhQUFhLENBQUMiLCJmaWxlIjoiY29tcG9uZW50cy9BY3Rpb25CYXIvQWN0aW9uQmFyLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsganN4IGFzIF9qc3gsIGpzeHMgYXMgX2pzeHMgfSBmcm9tIFwicmVhY3QvanN4LXJ1bnRpbWVcIjtcbmltcG9ydCB7IEZyYWdtZW50LCBtZW1vIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgQnV0dG9uIH0gZnJvbSAnLi4vQnV0dG9uJztcbmltcG9ydCB7IERpdmlkZXIgfSBmcm9tICcuLi9EaXZpZGVyJztcbmltcG9ydCB7IEZsZXggfSBmcm9tICcuLi9GbGV4JztcbmltcG9ydCB7IFR5cG9ncmFwaHkgfSBmcm9tICcuLi9UeXBvZ3JhcGh5JztcbmltcG9ydCB7IGRlZmF1bHQgYXMgY2xhc3NuYW1lcywgam9pbkNscyB9IGZyb20gJy4uLy4uL3V0aWxzL2NsYXNzbmFtZXMnO1xuaW1wb3J0IHsgQUNUSU9OX0JBUl9CVVRUT05fU0laRSwgQUNUSU9OX0JBUl9ERUZBVUxUUywgQUNUSU9OX0JBUl9QUkVGSVgsIEFDVElPTl9CQVJfU0xPVCwgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgJy4vc3R5bGUnO1xuY29uc3QgQUNUSVZBVElPTl9LRVlTID0gWydFbnRlcicsICcgJ107XG5jb25zdCByZW5kZXJBY3Rpb24gPSAoYWN0aW9uLCBmYWxsYmFja0xhYmVsLCBkZWZhdWx0Q29sb3IsIHNpemUpID0+IHtcbiAgICB2YXIgX2EsIF9iO1xuICAgIHJldHVybiAoX2pzeChCdXR0b24sIHsgc2l6ZTogc2l6ZSwgdmFyaWFudDogYWN0aW9uLnZhcmlhbnQsIGNvbG9yOiAoX2EgPSBhY3Rpb24uY29sb3IpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IGRlZmF1bHRDb2xvciwgaWNvblN0YXJ0OiBhY3Rpb24uaWNvbiwgbG9hZGluZzogYWN0aW9uLmxvYWRpbmcsIGRpc2FibGVkOiBhY3Rpb24uZGlzYWJsZWQsIG9uQ2xpY2s6IGFjdGlvbi5vbkNsaWNrLCB0eXBlOiBhY3Rpb24udHlwZSwgZm9ybTogYWN0aW9uLmZvcm0sIGNoaWxkcmVuOiAoX2IgPSBhY3Rpb24ubGFiZWwpICE9PSBudWxsICYmIF9iICE9PSB2b2lkIDAgPyBfYiA6IGZhbGxiYWNrTGFiZWwgfSkpO1xufTtcbmNvbnN0IEZvb3Rub3RlID0gKHsgcHJvbXB0LCBhY3Rpb24sIG9uQ2xpY2ssIGRpdmlkZWQsIGNsYXNzZXMsIH0pID0+IHtcbiAgICBjb25zdCBoYW5kbGVLZXlEb3duID0gKGV2ZW50KSA9PiB7XG4gICAgICAgIGlmICghQUNUSVZBVElPTl9LRVlTLmluY2x1ZGVzKGV2ZW50LmtleSkpXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIG9uQ2xpY2sgPT09IG51bGwgfHwgb25DbGljayA9PT0gdm9pZCAwID8gdm9pZCAwIDogb25DbGljaygpO1xuICAgIH07XG4gICAgcmV0dXJuIChfanN4cyhcImRpdlwiLCB7IGNsYXNzTmFtZTogY2xhc3NlcyhBQ1RJT05fQkFSX1NMT1QuZm9vdG5vdGUpLCBjaGlsZHJlbjogW2RpdmlkZWQgJiYgX2pzeChEaXZpZGVyLCB7fSksIF9qc3hzKEZsZXgsIHsgYWxpZ246ICdjZW50ZXInLCBqdXN0aWZ5OiAnY2VudGVyJywgZ2FwOiA0LCBjaGlsZHJlbjogW3Byb21wdCAmJiAoX2pzeChUeXBvZ3JhcGh5LkJvZHksIHsgc2l6ZTogJ21kJywgc3Ryb25nOiB0cnVlLCBjb2xvcjogJ2RlZmF1bHQtdGVydGlhcnknLCBjaGlsZHJlbjogcHJvbXB0IH0pKSwgYWN0aW9uICYmIChfanN4KFR5cG9ncmFwaHkuTGluaywgeyBzaXplOiAnbWQnLCBjb2xvcjogJ2JyYW5kJywgcm9sZTogJ2J1dHRvbicsIHRhYkluZGV4OiAwLCBvbkNsaWNrOiBvbkNsaWNrLCBvbktleURvd246IGhhbmRsZUtleURvd24sIGNoaWxkcmVuOiBhY3Rpb24gfSkpXSB9KV0gfSkpO1xufTtcbi8qKlxuICogRm9vdGVyIGFjdGlvbiBlbmdpbmUgc2hhcmVkIGJ5IGV2ZXJ5IGZvcm0vZGlhbG9nIHN1cmZhY2UuIE9yZGVyIGFuZCB0b25lc1xuICogYXJlIGxvY2tlZCAoc2Vjb25kYXJ5IGxlZnQsIHByaW1hcnkgcmlnaHQpOyB0aGUgYGxheW91dGAg4oCUIGNob3NlbiBieSB0aGVcbiAqIHNjZW5hcmlvIHNoZWxsLCBuZXZlciBieSBidXNpbmVzcyBjb2RlIOKAlCBkZWNpZGVzIHRoZSB0d28gRFMgZm9vdGVyIHNoYXBlczpcbiAqIGBmaWxsYCAocm93LXNoYXJpbmcgbGFyZ2UgYnV0dG9ucykgb3IgYGNvbXBhY3RgIChhdXRvLXdpZHRoIG1lZGl1bSBidXR0b25zLFxuICogbGVmdC1hbGlnbmVkKS5cbiAqL1xuY29uc3QgQWN0aW9uQmFyQmFzZSA9ICh7IGxheW91dCA9ICdmaWxsJywgZGlyZWN0aW9uID0gJ2hvcml6b250YWwnLCBwcmltYXJ5LCBwcmltYXJ5U2xvdCwgc2Vjb25kYXJ5LCBmb290bm90ZSwgcHJlZml4Q2xzID0gQUNUSU9OX0JBUl9QUkVGSVgsIGNsYXNzTmFtZSwgfSkgPT4ge1xuICAgIHZhciBfYSwgX2IsIF9jLCBfZDtcbiAgICBjb25zdCBjbGFzc2VzID0gY2xhc3NuYW1lcyhwcmVmaXhDbHMpO1xuICAgIGNvbnN0IHZlcnRpY2FsID0gZGlyZWN0aW9uID09PSAndmVydGljYWwnO1xuICAgIGNvbnN0IGJ1dHRvblNpemUgPSBBQ1RJT05fQkFSX0JVVFRPTl9TSVpFW2xheW91dF07XG4gICAgLy8gRGVmYXVsdCBvcmRlcjogaG9yaXpvbnRhbCDihpIgc2Vjb25kYXJ5IGxlZnQgb2YgcHJpbWFyeTsgdmVydGljYWwg4oaSXG4gICAgLy8gcHJpbWFyeSBvbiB0b3AuIEFuIGV4cGxpY2l0IGBhY3Rpb24ub3JkZXJgIG92ZXJyaWRlcyBlaXRoZXIuXG4gICAgY29uc3QgaXRlbXMgPSBbXG4gICAgICAgIHNlY29uZGFyeSAmJiB7XG4gICAgICAgICAgICBrZXk6ICdzZWNvbmRhcnknLFxuICAgICAgICAgICAgb3JkZXI6IChfYSA9IHNlY29uZGFyeS5vcmRlcikgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogKHZlcnRpY2FsID8gMSA6IDApLFxuICAgICAgICAgICAgbm9kZTogcmVuZGVyQWN0aW9uKHNlY29uZGFyeSwgQUNUSU9OX0JBUl9ERUZBVUxUUy5zZWNvbmRhcnlMYWJlbCwgQUNUSU9OX0JBUl9ERUZBVUxUUy5zZWNvbmRhcnlDb2xvciwgKF9iID0gc2Vjb25kYXJ5LnNpemUpICE9PSBudWxsICYmIF9iICE9PSB2b2lkIDAgPyBfYiA6IGJ1dHRvblNpemUpLFxuICAgICAgICB9LFxuICAgICAgICAocHJpbWFyeSB8fCBwcmltYXJ5U2xvdCAhPSBudWxsKSA/IHtcbiAgICAgICAgICAgIGtleTogJ3ByaW1hcnknLFxuICAgICAgICAgICAgb3JkZXI6IChfYyA9IHByaW1hcnkgPT09IG51bGwgfHwgcHJpbWFyeSA9PT0gdm9pZCAwID8gdm9pZCAwIDogcHJpbWFyeS5vcmRlcikgIT09IG51bGwgJiYgX2MgIT09IHZvaWQgMCA/IF9jIDogKHZlcnRpY2FsID8gMCA6IDEpLFxuICAgICAgICAgICAgbm9kZTogcHJpbWFyeVNsb3QgIT09IG51bGwgJiYgcHJpbWFyeVNsb3QgIT09IHZvaWQgMCA/IHByaW1hcnlTbG90IDogcmVuZGVyQWN0aW9uKHByaW1hcnksIEFDVElPTl9CQVJfREVGQVVMVFMucHJpbWFyeUxhYmVsLCBBQ1RJT05fQkFSX0RFRkFVTFRTLnByaW1hcnlDb2xvciwgKF9kID0gcHJpbWFyeS5zaXplKSAhPT0gbnVsbCAmJiBfZCAhPT0gdm9pZCAwID8gX2QgOiBidXR0b25TaXplKSxcbiAgICAgICAgfSA6IHVuZGVmaW5lZCxcbiAgICBdXG4gICAgICAgIC5maWx0ZXIoKGl0ZW0pID0+IEJvb2xlYW4oaXRlbSkpXG4gICAgICAgIC5zb3J0KChhLCBiKSA9PiBhLm9yZGVyIC0gYi5vcmRlcik7XG4gICAgaWYgKCFpdGVtcy5sZW5ndGggJiYgIWZvb3Rub3RlKVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICByZXR1cm4gKF9qc3hzKEZsZXgsIHsgdmVydGljYWw6IHRydWUsIGdhcDogMTYsIGNsYXNzTmFtZTogam9pbkNscyhjbGFzc2VzKCksIGNsYXNzZXMobGF5b3V0KSwgY2xhc3NlcyhkaXJlY3Rpb24pLCBjbGFzc05hbWUpLCBjaGlsZHJlbjogW2l0ZW1zLmxlbmd0aCA+IDAgJiYgKF9qc3goRmxleCwgeyB2ZXJ0aWNhbDogdmVydGljYWwsIGNsYXNzTmFtZTogY2xhc3NlcyhBQ1RJT05fQkFSX1NMT1QuYWN0aW9ucyksIGNoaWxkcmVuOiBpdGVtcy5tYXAoKGl0ZW0pID0+IChfanN4KEZyYWdtZW50LCB7IGNoaWxkcmVuOiBpdGVtLm5vZGUgfSwgaXRlbS5rZXkpKSkgfSkpLCBmb290bm90ZSAmJiBfanN4KEZvb3Rub3RlLCBPYmplY3QuYXNzaWduKHt9LCBmb290bm90ZSwgeyBjbGFzc2VzOiBjbGFzc2VzIH0pKV0gfSkpO1xufTtcbmV4cG9ydCBjb25zdCBBY3Rpb25CYXIgPSBtZW1vKEFjdGlvbkJhckJhc2UpOyIsbnVsbF0sInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMifQ==
125
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvQWN0aW9uQmFyL0FjdGlvbkJhci5qcyIsImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvQWN0aW9uQmFyL0FjdGlvbkJhci50c3giXSwibmFtZXMiOlsiX2pzeFJ1bnRpbWUiLCJyZXF1aXJlIiwiX3JlYWN0IiwiX0J1dHRvbiIsIl9EaXZpZGVyIiwiX0ZsZXgiLCJfVHlwb2dyYXBoeSIsIl9jbGFzc25hbWVzIiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJfY29uc3RhbnRzIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiaGFzIiwiZ2V0IiwibiIsIl9fcHJvdG9fXyIsImEiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0IiwiQUNUSVZBVElPTl9LRVlTIiwicmVuZGVyQWN0aW9uIiwiYWN0aW9uIiwiZmFsbGJhY2tMYWJlbCIsImRlZmF1bHRDb2xvciIsInNpemUiLCJfYSIsIl9iIiwiX2pzeCIsIkJ1dHRvbiIsInZhcmlhbnQiLCJjb2xvciIsImljb25TdGFydCIsImljb24iLCJsb2FkaW5nIiwiZGlzYWJsZWQiLCJvbkNsaWNrIiwidHlwZSIsImZvcm0iLCJjaGlsZHJlbiIsImxhYmVsIiwiRm9vdG5vdGUiLCJfcmVmIiwicHJvbXB0IiwiZGl2aWRlZCIsImNsYXNzZXMiLCJoYW5kbGVLZXlEb3duIiwiZXZlbnQiLCJpbmNsdWRlcyIsImtleSIsInByZXZlbnREZWZhdWx0IiwiX2pzeHMiLCJjbGFzc05hbWUiLCJBQ1RJT05fQkFSX1NMT1QiLCJmb290bm90ZSIsIkRpdmlkZXIiLCJGbGV4IiwiYWxpZ24iLCJqdXN0aWZ5IiwiZ2FwIiwiVHlwb2dyYXBoeSIsIkJvZHkiLCJMaW5rIiwicm9sZSIsInRhYkluZGV4Iiwib25LZXlEb3duIiwiQWN0aW9uQmFyQmFzZSIsIl9yZWYyIiwiX3JlZjIkbGF5b3V0IiwibGF5b3V0IiwiX3JlZjIkZGlyZWN0aW9uIiwiZGlyZWN0aW9uIiwicHJpbWFyeSIsInByaW1hcnlTbG90Iiwic2Vjb25kYXJ5IiwiX3JlZjIkcHJlZml4Q2xzIiwicHJlZml4Q2xzIiwiQUNUSU9OX0JBUl9QUkVGSVgiLCJfYyIsIl9kIiwiY2xhc3NuYW1lcyIsInZlcnRpY2FsIiwiYnV0dG9uU2l6ZSIsIkFDVElPTl9CQVJfQlVUVE9OX1NJWkUiLCJpdGVtcyIsIm9yZGVyIiwibm9kZSIsIkFDVElPTl9CQVJfREVGQVVMVFMiLCJzZWNvbmRhcnlMYWJlbCIsInNlY29uZGFyeUNvbG9yIiwicHJpbWFyeUxhYmVsIiwicHJpbWFyeUNvbG9yIiwidW5kZWZpbmVkIiwiZmlsdGVyIiwiaXRlbSIsIkJvb2xlYW4iLCJzb3J0IiwiYiIsImxlbmd0aCIsImpvaW5DbHMiLCJhY3Rpb25zIiwibWFwIiwiRnJhZ21lbnQiLCJhc3NpZ24iLCJBY3Rpb25CYXIiLCJleHBvcnRzIiwibWVtbyJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBLElBQUFBLFdBQUEsR0FBQUMsT0FBQTtBQ0FBLElBQUFDLE1BQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLE9BQUEsR0FBQUYsT0FBQTtBQUNBLElBQUFHLFFBQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLEtBQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLFdBQUEsR0FBQUwsT0FBQTtBQUNBLElBQUFNLFdBQUEsR0FBQUMsdUJBQUEsQ0FBQVAsT0FBQTtBQUNBLElBQUFRLFVBQUEsR0FBQVIsT0FBQTtBQVVBQSxPQUFBO0FBQWlCLFNBQUFTLHlCQUFBQyxDQUFBLDZCQUFBQyxPQUFBLG1CQUFBQyxDQUFBLE9BQUFELE9BQUEsSUFBQUUsQ0FBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLHlCQUFBQyxDQUFBLFdBQUFBLENBQUEsR0FBQUcsQ0FBQSxHQUFBRCxDQUFBLEtBQUFGLENBQUE7QUFB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QUU7SUFDUFAsU0FBUyxFQUFFLElBQUErQyxtQkFBTyxFQUFDdEQsT0FBTyxDQUFBLENBQUUsRUFBRUEsT0FBTyxDQUFDd0IsTUFBTSxDQUFDLEVBQUV4QixPQUFPLENBQUMwQixTQUFTLENBQUMsRUFBRW5CLFNBQVMsQ0FBQztJQUFBYixRQUFBLEVBQUEsQ0FFNUU2QyxLQUFLLENBQUNjLE1BQU0sR0FBRyxDQUFDLElBQ2YsSUFBQXRFLGVBQUEsRUFBQzRCLFVBQUksRUFBQTtNQUFDeUIsUUFBUSxFQUFFQSxRQUFRO01BQUU3QixTQUFTLEVBQUVQLE9BQU8sQ0FBQ1EsMEJBQWUsQ0FBQytDLE9BQU8sQ0FBQztNQUFBN0QsUUFBQSxFQUNsRTZDLEtBQUssQ0FBQ2lCLEdBQUcsQ0FBQyxVQUFDUCxJQUFJO1FBQUEsT0FDZCxJQUFBbEUsZUFBQSxFQUFDMEUsZUFBUSxFQUFBO1VBQUEvRCxRQUFBLEVBQWlCdUQsSUFBSSxDQUFDUjtRQUFJLENBQUEsRUFBcEJRLElBQUksQ0FBQzdDLEdBQUcsQ0FBd0I7TUFBQSxDQUNoRDtJQUFDLENBQUEsQ0FFTCxFQUNBSyxRQUFRLElBQUksSUFBQTFCLGVBQUEsRUFBQ2EsUUFBUSxFQUFBN0IsTUFBQSxDQUFBMkYsTUFBQSxDQUFBLENBQUEsQ0FBQSxFQUFLakQsUUFBUSxFQUFBO01BQUVULE9BQU8sRUFBRUE7SUFBTyxDQUFBLENBQUEsQ0FBSTtFQUFBLENBQUEsQ0FDcEQ7QUFFWCxDQUFDO0FBRU0sSUFBTTJELFNBQVMsR0FBQUMsT0FBQSxDQUFBRCxTQUFBLGdCQUFHLElBQUFFLFdBQUksRUFBQ3hDLGFBQWEsQ0FBQyIsImZpbGUiOiJjb21wb25lbnRzL0FjdGlvbkJhci9BY3Rpb25CYXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBqc3ggYXMgX2pzeCwganN4cyBhcyBfanN4cyB9IGZyb20gXCJyZWFjdC9qc3gtcnVudGltZVwiO1xuaW1wb3J0IHsgRnJhZ21lbnQsIG1lbW8gfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBCdXR0b24gfSBmcm9tICcuLi9CdXR0b24nO1xuaW1wb3J0IHsgRGl2aWRlciB9IGZyb20gJy4uL0RpdmlkZXInO1xuaW1wb3J0IHsgRmxleCB9IGZyb20gJy4uL0ZsZXgnO1xuaW1wb3J0IHsgVHlwb2dyYXBoeSB9IGZyb20gJy4uL1R5cG9ncmFwaHknO1xuaW1wb3J0IHsgZGVmYXVsdCBhcyBjbGFzc25hbWVzLCBqb2luQ2xzIH0gZnJvbSAnLi4vLi4vdXRpbHMvY2xhc3NuYW1lcyc7XG5pbXBvcnQgeyBBQ1RJT05fQkFSX0JVVFRPTl9TSVpFLCBBQ1RJT05fQkFSX0RFRkFVTFRTLCBBQ1RJT05fQkFSX1BSRUZJWCwgQUNUSU9OX0JBUl9TTE9ULCB9IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCAnLi9zdHlsZSc7XG5jb25zdCBBQ1RJVkFUSU9OX0tFWVMgPSBbJ0VudGVyJywgJyAnXTtcbmNvbnN0IHJlbmRlckFjdGlvbiA9IChhY3Rpb24sIGZhbGxiYWNrTGFiZWwsIGRlZmF1bHRDb2xvciwgc2l6ZSkgPT4ge1xuICAgIHZhciBfYSwgX2I7XG4gICAgcmV0dXJuIChfanN4KEJ1dHRvbiwgeyBzaXplOiBzaXplLCB2YXJpYW50OiBhY3Rpb24udmFyaWFudCwgY29sb3I6IChfYSA9IGFjdGlvbi5jb2xvcikgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogZGVmYXVsdENvbG9yLCBpY29uU3RhcnQ6IGFjdGlvbi5pY29uLCBsb2FkaW5nOiBhY3Rpb24ubG9hZGluZywgZGlzYWJsZWQ6IGFjdGlvbi5kaXNhYmxlZCwgb25DbGljazogYWN0aW9uLm9uQ2xpY2ssIHR5cGU6IGFjdGlvbi50eXBlLCBmb3JtOiBhY3Rpb24uZm9ybSwgY2hpbGRyZW46IChfYiA9IGFjdGlvbi5sYWJlbCkgIT09IG51bGwgJiYgX2IgIT09IHZvaWQgMCA/IF9iIDogZmFsbGJhY2tMYWJlbCB9KSk7XG59O1xuY29uc3QgRm9vdG5vdGUgPSAoeyBwcm9tcHQsIGFjdGlvbiwgb25DbGljaywgZGl2aWRlZCwgY2xhc3NlcywgfSkgPT4ge1xuICAgIGNvbnN0IGhhbmRsZUtleURvd24gPSAoZXZlbnQpID0+IHtcbiAgICAgICAgaWYgKCFBQ1RJVkFUSU9OX0tFWVMuaW5jbHVkZXMoZXZlbnQua2V5KSlcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgb25DbGljayA9PT0gbnVsbCB8fCBvbkNsaWNrID09PSB2b2lkIDAgPyB2b2lkIDAgOiBvbkNsaWNrKCk7XG4gICAgfTtcbiAgICByZXR1cm4gKF9qc3hzKFwiZGl2XCIsIHsgY2xhc3NOYW1lOiBjbGFzc2VzKEFDVElPTl9CQVJfU0xPVC5mb290bm90ZSksIGNoaWxkcmVuOiBbZGl2aWRlZCAmJiBfanN4KERpdmlkZXIsIHt9KSwgX2pzeHMoRmxleCwgeyBhbGlnbjogJ2NlbnRlcicsIGp1c3RpZnk6ICdjZW50ZXInLCBnYXA6IDQsIGNoaWxkcmVuOiBbcHJvbXB0ICYmIChfanN4KFR5cG9ncmFwaHkuQm9keSwgeyBzaXplOiAnc20nLCBjb2xvcjogJ2RlZmF1bHQtdGVydGlhcnknLCBjaGlsZHJlbjogcHJvbXB0IH0pKSwgYWN0aW9uICYmIChfanN4KFR5cG9ncmFwaHkuTGluaywgeyBzaXplOiAnc20nLCBjb2xvcjogJ2JyYW5kJywgcm9sZTogJ2J1dHRvbicsIHRhYkluZGV4OiAwLCBvbkNsaWNrOiBvbkNsaWNrLCBvbktleURvd246IGhhbmRsZUtleURvd24sIGNoaWxkcmVuOiBhY3Rpb24gfSkpXSB9KV0gfSkpO1xufTtcbi8qKlxuICogRm9vdGVyIGFjdGlvbiBlbmdpbmUgc2hhcmVkIGJ5IGV2ZXJ5IGZvcm0vZGlhbG9nIHN1cmZhY2UuIE9yZGVyIGFuZCB0b25lc1xuICogYXJlIGxvY2tlZCAoc2Vjb25kYXJ5IGxlZnQsIHByaW1hcnkgcmlnaHQpOyB0aGUgYGxheW91dGAg4oCUIGNob3NlbiBieSB0aGVcbiAqIHNjZW5hcmlvIHNoZWxsLCBuZXZlciBieSBidXNpbmVzcyBjb2RlIOKAlCBkZWNpZGVzIHRoZSB0d28gRFMgZm9vdGVyIHNoYXBlczpcbiAqIGBmaWxsYCAocm93LXNoYXJpbmcgbGFyZ2UgYnV0dG9ucykgb3IgYGNvbXBhY3RgIChhdXRvLXdpZHRoIG1lZGl1bSBidXR0b25zLFxuICogbGVmdC1hbGlnbmVkKS5cbiAqL1xuY29uc3QgQWN0aW9uQmFyQmFzZSA9ICh7IGxheW91dCA9ICdmaWxsJywgZGlyZWN0aW9uID0gJ2hvcml6b250YWwnLCBwcmltYXJ5LCBwcmltYXJ5U2xvdCwgc2Vjb25kYXJ5LCBmb290bm90ZSwgcHJlZml4Q2xzID0gQUNUSU9OX0JBUl9QUkVGSVgsIGNsYXNzTmFtZSwgfSkgPT4ge1xuICAgIHZhciBfYSwgX2IsIF9jLCBfZDtcbiAgICBjb25zdCBjbGFzc2VzID0gY2xhc3NuYW1lcyhwcmVmaXhDbHMpO1xuICAgIGNvbnN0IHZlcnRpY2FsID0gZGlyZWN0aW9uID09PSAndmVydGljYWwnO1xuICAgIGNvbnN0IGJ1dHRvblNpemUgPSBBQ1RJT05fQkFSX0JVVFRPTl9TSVpFW2xheW91dF07XG4gICAgLy8gRGVmYXVsdCBvcmRlcjogaG9yaXpvbnRhbCDihpIgc2Vjb25kYXJ5IGxlZnQgb2YgcHJpbWFyeTsgdmVydGljYWwg4oaSXG4gICAgLy8gcHJpbWFyeSBvbiB0b3AuIEFuIGV4cGxpY2l0IGBhY3Rpb24ub3JkZXJgIG92ZXJyaWRlcyBlaXRoZXIuXG4gICAgY29uc3QgaXRlbXMgPSBbXG4gICAgICAgIHNlY29uZGFyeSAmJiB7XG4gICAgICAgICAgICBrZXk6ICdzZWNvbmRhcnknLFxuICAgICAgICAgICAgb3JkZXI6IChfYSA9IHNlY29uZGFyeS5vcmRlcikgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogKHZlcnRpY2FsID8gMSA6IDApLFxuICAgICAgICAgICAgbm9kZTogcmVuZGVyQWN0aW9uKHNlY29uZGFyeSwgQUNUSU9OX0JBUl9ERUZBVUxUUy5zZWNvbmRhcnlMYWJlbCwgQUNUSU9OX0JBUl9ERUZBVUxUUy5zZWNvbmRhcnlDb2xvciwgKF9iID0gc2Vjb25kYXJ5LnNpemUpICE9PSBudWxsICYmIF9iICE9PSB2b2lkIDAgPyBfYiA6IGJ1dHRvblNpemUpLFxuICAgICAgICB9LFxuICAgICAgICAocHJpbWFyeSB8fCBwcmltYXJ5U2xvdCAhPSBudWxsKSA/IHtcbiAgICAgICAgICAgIGtleTogJ3ByaW1hcnknLFxuICAgICAgICAgICAgb3JkZXI6IChfYyA9IHByaW1hcnkgPT09IG51bGwgfHwgcHJpbWFyeSA9PT0gdm9pZCAwID8gdm9pZCAwIDogcHJpbWFyeS5vcmRlcikgIT09IG51bGwgJiYgX2MgIT09IHZvaWQgMCA/IF9jIDogKHZlcnRpY2FsID8gMCA6IDEpLFxuICAgICAgICAgICAgbm9kZTogcHJpbWFyeVNsb3QgIT09IG51bGwgJiYgcHJpbWFyeVNsb3QgIT09IHZvaWQgMCA/IHByaW1hcnlTbG90IDogcmVuZGVyQWN0aW9uKHByaW1hcnksIEFDVElPTl9CQVJfREVGQVVMVFMucHJpbWFyeUxhYmVsLCBBQ1RJT05fQkFSX0RFRkFVTFRTLnByaW1hcnlDb2xvciwgKF9kID0gcHJpbWFyeS5zaXplKSAhPT0gbnVsbCAmJiBfZCAhPT0gdm9pZCAwID8gX2QgOiBidXR0b25TaXplKSxcbiAgICAgICAgfSA6IHVuZGVmaW5lZCxcbiAgICBdXG4gICAgICAgIC5maWx0ZXIoKGl0ZW0pID0+IEJvb2xlYW4oaXRlbSkpXG4gICAgICAgIC5zb3J0KChhLCBiKSA9PiBhLm9yZGVyIC0gYi5vcmRlcik7XG4gICAgaWYgKCFpdGVtcy5sZW5ndGggJiYgIWZvb3Rub3RlKVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICByZXR1cm4gKF9qc3hzKEZsZXgsIHsgdmVydGljYWw6IHRydWUsIGdhcDogMTYsIGNsYXNzTmFtZTogam9pbkNscyhjbGFzc2VzKCksIGNsYXNzZXMobGF5b3V0KSwgY2xhc3NlcyhkaXJlY3Rpb24pLCBjbGFzc05hbWUpLCBjaGlsZHJlbjogW2l0ZW1zLmxlbmd0aCA+IDAgJiYgKF9qc3goRmxleCwgeyB2ZXJ0aWNhbDogdmVydGljYWwsIGNsYXNzTmFtZTogY2xhc3NlcyhBQ1RJT05fQkFSX1NMT1QuYWN0aW9ucyksIGNoaWxkcmVuOiBpdGVtcy5tYXAoKGl0ZW0pID0+IChfanN4KEZyYWdtZW50LCB7IGNoaWxkcmVuOiBpdGVtLm5vZGUgfSwgaXRlbS5rZXkpKSkgfSkpLCBmb290bm90ZSAmJiBfanN4KEZvb3Rub3RlLCBPYmplY3QuYXNzaWduKHt9LCBmb290bm90ZSwgeyBjbGFzc2VzOiBjbGFzc2VzIH0pKV0gfSkpO1xufTtcbmV4cG9ydCBjb25zdCBBY3Rpb25CYXIgPSBtZW1vKEFjdGlvbkJhckJhc2UpOyIsbnVsbF0sInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMifQ==
@@ -69,8 +69,13 @@ export interface ActionBarProps {
69
69
  */
70
70
  layout?: ActionBarLayout;
71
71
  /**
72
- * Arrangement: `horizontal` (default) or `vertical` (stacked, each button
73
- * full-width — result-dialog style).
72
+ * Arrangement: `horizontal` (default two actions split the row) or
73
+ * `vertical` (stacked, each button full-width).
74
+ *
75
+ * The default applies everywhere, result surfaces included: `PanelLayout`
76
+ * and `BaseDialog` pass this straight through and set no default of their
77
+ * own. `vertical` is opt-in, for flows that want the actions read
78
+ * top-to-bottom rather than weighed side by side.
74
79
  */
75
80
  direction?: ActionBarDirection;
76
81
  /**
@@ -15,10 +15,16 @@ export interface DialogProps extends Omit<HTMLAttributes<HTMLDivElement>, 'child
15
15
  fullWidth?: boolean;
16
16
  fixed?: boolean;
17
17
  /**
18
- * Bare panel mode: keep the overlay machinery (portal, mask, Esc, close /
19
- * back controls, viewport max-height, width presets) but render NO panel
20
- * chrome and NO header/body/footer slots — children fill the panel
21
- * directly. For surfaces that bring their own chrome (e.g. FormLayout).
18
+ * Bare panel mode: keep the overlay machinery (portal, mask, Esc, the close
19
+ * control, viewport max-height, width presets) but render NO panel chrome
20
+ * and NO header/body/footer slots — children fill the panel directly. For
21
+ * surfaces that bring their own chrome (e.g. FormLayout).
22
+ *
23
+ * `showBackIcon` is NOT honoured here. The close control is absolutely
24
+ * positioned overlay chrome and works in either mode, but the back arrow
25
+ * takes its own row in the content flow — and a bare panel has no content
26
+ * flow to put it in. A bare host that needs one renders it into its own
27
+ * surface instead (PanelLayout takes `showBackIcon`/`onBack` of its own).
22
28
  */
23
29
  bare?: boolean;
24
30
  width?: number | string;
@@ -27,7 +27,12 @@ export interface FormLayoutProps extends Omit<HTMLAttributes<HTMLDivElement>, 't
27
27
  * footer stay pinned); when `false` content always grows the panel.
28
28
  */
29
29
  scroll?: boolean;
30
- /** Heading; a plain string renders as Headline/md (24px). */
30
+ /**
31
+ * Heading; a plain string renders as `Headline/sm` (24 / 28) regardless of
32
+ * variant or size. Pass a node to compose your own header block (e.g. a
33
+ * title with a description under it) — the automatic wrapping is skipped,
34
+ * so supply the `Headline/sm` typography yourself.
35
+ */
31
36
  title?: ReactNode;
32
37
  /** Trailing slot on the title row (e.g. an environment switcher). */
33
38
  extra?: ReactNode;
@@ -0,0 +1,3 @@
1
+ import type { PanelLayoutProps } from './interface';
2
+ import './style';
3
+ export declare const PanelLayout: import("react").NamedExoticComponent<PanelLayoutProps>;
@@ -0,0 +1,171 @@
1
+ "use strict";
2
+
3
+ var _typeof = require("@babel/runtime/helpers/typeof");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.PanelLayout = void 0;
8
+ var _jsxRuntime = require("react/jsx-runtime");
9
+ var _react = require("react");
10
+ var _ActionBar = require("../ActionBar");
11
+ var _FormLayout = require("../FormLayout");
12
+ var _Icons = require("../Icons");
13
+ var _Typography = require("../Typography");
14
+ var _classnames = _interopRequireWildcard(require("../../utils/classnames"));
15
+ var _constants = require("./constants");
16
+ require("./style");
17
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
18
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
19
+ /**
20
+ * The non-form content PANEL — the counterpart to `FormLayout`: that one
21
+ * holds fields, this one holds an illustration, copy and actions. ONE surface
22
+ * serving two hosts:
23
+ *
24
+ * page host <PanelLayout /> used directly
25
+ * dialog host BaseDialog = Dialog(bare) + this(modal) only adds the overlay
26
+ *
27
+ * Deliberately NOT named for a scenario, because it carries several: a
28
+ * verification challenge, a stepped wizard (2FA setup — hence the back
29
+ * arrow), a terminal page with no action at all.
30
+ *
31
+ * On a page, ONE of those scenarios has a shell of its own and the rest do
32
+ * not — which decides where business code should reach:
33
+ *
34
+ * a result (success / failure / expired / …) → `ResultForm`, business/Form
35
+ * anything else → this, directly
36
+ *
37
+ * So being used directly is the normal case here, not a fallback. Only add
38
+ * another shell on top when a scenario earns a name AND recurring copy (a
39
+ * `preset`); a shell that just re-exports this one buys nothing.
40
+ *
41
+ * Assembly:
42
+ *
43
+ * FormLayout card chrome (surface, hairline, radius) + the 24
44
+ * │ padding and 16 region gap. Its `page/small` width
45
+ * │ (448, the sign-in card) is NOT used — the panel width
46
+ * │ comes from the config table.
47
+ * ├─ header slot back / illustration / eyebrow / title / description as
48
+ * │ ONE block on 8px seams. It goes in the title slot, not
49
+ * │ the content region, because it is all header copy —
50
+ * │ that also keeps it pinned when the content scrolls.
51
+ * ├─ content region `children` — free-form (a QR code, an OTP input, rows)
52
+ * └─ ActionBar(fill) the actions.
53
+ *
54
+ * It owns no copy and no loose numbers: everything host-specific comes from
55
+ * `PANEL_LAYOUT_CONFIG`, so a divergence between page and dialog is a value
56
+ * change in that table and nothing else.
57
+ */
58
+ var PanelLayoutBase = function PanelLayoutBase(_ref) {
59
+ var _ref$variant = _ref.variant,
60
+ variant = _ref$variant === void 0 ? 'page' : _ref$variant,
61
+ scroll = _ref.scroll,
62
+ width = _ref.width,
63
+ className = _ref.className,
64
+ showBackIcon = _ref.showBackIcon,
65
+ onBack = _ref.onBack,
66
+ backIcon = _ref.backIcon,
67
+ eyebrow = _ref.eyebrow,
68
+ title = _ref.title,
69
+ description = _ref.description,
70
+ _ref$descriptionStron = _ref.descriptionStrong,
71
+ descriptionStrong = _ref$descriptionStron === void 0 ? true : _ref$descriptionStron,
72
+ illustration = _ref.illustration,
73
+ primary = _ref.primary,
74
+ secondary = _ref.secondary,
75
+ direction = _ref.direction,
76
+ footnote = _ref.footnote,
77
+ children = _ref.children;
78
+ var classes = (0, _classnames["default"])(_constants.PANEL_LAYOUT_PREFIX);
79
+ var config = (0, _constants.resolvePanelLayoutConfig)(variant);
80
+ // A plain string becomes the family heading; a node passes through so
81
+ // callers can compose (e.g. a Tag above a two-line title).
82
+ var titleNode = typeof title === 'string' || typeof title === 'number' ? (0, _jsxRuntime.jsx)(_Typography.Typography.Headline, {
83
+ size: 'sm',
84
+ as: 'h2',
85
+ color: 'default',
86
+ children: title
87
+ }) : title;
88
+ // Same contract as `title`: a plain string gets the family treatment (the
89
+ // muted label of "Step 2 of 3"), a node passes through so a Tag or a
90
+ // composed row still works. Without this every caller with a text eyebrow
91
+ // would hand-roll the same Typography.
92
+ //
93
+ // An EMPTY string counts as absent. Callers routinely hold the eyebrow in a
94
+ // state object that starts as `''`, and rendering an empty label would open
95
+ // an 8px seam above the title for nothing — so they can pass the value
96
+ // straight through instead of guarding it at every call site.
97
+ var eyebrowNode = eyebrow == null || eyebrow === '' ? null : typeof eyebrow === 'string' || typeof eyebrow === 'number' ? (0, _jsxRuntime.jsx)(_Typography.Typography.Body, {
98
+ size: 'sm',
99
+ color: 'default-tertiary',
100
+ children: eyebrow
101
+ }) : eyebrow;
102
+ var illustrationNode = typeof illustration === 'string' ? (0, _jsxRuntime.jsx)(_Icons.Icons, {
103
+ name: illustration,
104
+ size: config.illustrationSize
105
+ }) : illustration;
106
+ // Its own row above everything else, on the block's 8px seam — the shape
107
+ // stepped flows use in both hosts (2FA setup on a page, wizard dialogs).
108
+ var backNode = showBackIcon ? (0, _jsxRuntime.jsx)("button", {
109
+ type: 'button',
110
+ className: classes('back'),
111
+ "aria-label": _constants.PANEL_LAYOUT_BACK_LABEL,
112
+ onClick: onBack,
113
+ children: backIcon !== null && backIcon !== void 0 ? backIcon : (0, _jsxRuntime.jsx)(_Icons.Icons, {
114
+ name: 'arrowLeft',
115
+ size: _constants.PANEL_LAYOUT_BACK_ICON_SIZE
116
+ })
117
+ }) : null;
118
+ var hasHeader = showBackIcon || illustration != null || eyebrowNode != null || title != null || description != null;
119
+ var header = hasHeader ? (0, _jsxRuntime.jsxs)("div", {
120
+ className: classes('header'),
121
+ children: [backNode, illustrationNode != null && (0, _jsxRuntime.jsx)("div", {
122
+ className: classes('illustration'),
123
+ children: illustrationNode
124
+ }), eyebrowNode, titleNode, description != null && (0, _jsxRuntime.jsx)(_Typography.Typography.Body, {
125
+ as: 'p',
126
+ size: 'md',
127
+ strong: descriptionStrong,
128
+ color: 'default-secondary',
129
+ children: description
130
+ })]
131
+ }) : undefined;
132
+ // The bar owns the button size, so the family size is applied per action
133
+ // rather than as a bar-level prop; an explicit per-action `size` still wins.
134
+ var withSize = function withSize(action) {
135
+ var _a;
136
+ return action && Object.assign(Object.assign({}, action), {
137
+ size: (_a = action.size) !== null && _a !== void 0 ? _a : config.buttonSize
138
+ });
139
+ };
140
+ var footer = primary || secondary || footnote ? (0, _jsxRuntime.jsx)(_ActionBar.ActionBar, {
141
+ direction: direction,
142
+ primary: withSize(primary),
143
+ secondary: withSize(secondary),
144
+ footnote: footnote
145
+ }) : undefined;
146
+ return (0, _jsxRuntime.jsx)(_FormLayout.FormLayout
147
+ // `page/small` is used for its 24 padding and 16 region gap, which are
148
+ // already the result family's numbers. Its 448 width is NOT — that is
149
+ // the sign-in card; the result panel is 380, from the config table.
150
+ , {
151
+ // `page/small` is used for its 24 padding and 16 region gap, which are
152
+ // already the result family's numbers. Its 448 width is NOT — that is
153
+ // the sign-in card; the result panel is 380, from the config table.
154
+ variant: 'page',
155
+ size: 'small',
156
+ scroll: scroll,
157
+ // In a dialog the Dialog panel carries the width (BaseDialog reads the
158
+ // same entry) and the layout fills it: sizing a bare panel from its
159
+ // child hits the shrink-to-fit percentage circularity.
160
+ width: width !== null && width !== void 0 ? width : variant === 'modal' ? '100%' : config.width,
161
+ className: (0, _classnames.joinCls)(classes(), classes(variant), className),
162
+ style: {
163
+ '--form-layout-action-gap': "".concat(config.actionGap, "px")
164
+ },
165
+ title: header,
166
+ footer: footer,
167
+ children: children
168
+ });
169
+ };
170
+ var PanelLayout = exports.PanelLayout = /*#__PURE__*/(0, _react.memo)(PanelLayoutBase);
171
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvUGFuZWxMYXlvdXQvUGFuZWxMYXlvdXQuanMiLCJjb21wb25lbnRzL3NyYy9jb21wb25lbnRzL1BhbmVsTGF5b3V0L1BhbmVsTGF5b3V0LnRzeCJdLCJuYW1lcyI6WyJfanN4UnVudGltZSIsInJlcXVpcmUiLCJfcmVhY3QiLCJfQWN0aW9uQmFyIiwiX0Zvcm1MYXlvdXQiLCJfSWNvbnMiLCJfVHlwb2dyYXBoeSIsIl9jbGFzc25hbWVzIiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJfY29uc3RhbnRzIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiaGFzIiwiZ2V0IiwibiIsIl9fcHJvdG9fXyIsImEiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0IiwiUGFuZWxMYXlvdXRCYXNlIiwiX3JlZiIsIl9yZWYkdmFyaWFudCIsInZhcmlhbnQiLCJzY3JvbGwiLCJ3aWR0aCIsImNsYXNzTmFtZSIsInNob3dCYWNrSWNvbiIsIm9uQmFjayIsImJhY2tJY29uIiwiZXllYnJvdyIsInRpdGxlIiwiZGVzY3JpcHRpb24iLCJfcmVmJGRlc2NyaXB0aW9uU3Ryb24iLCJkZXNjcmlwdGlvblN0cm9uZyIsImlsbHVzdHJhdGlvbiIsInByaW1hcnkiLCJzZWNvbmRhcnkiLCJkaXJlY3Rpb24iLCJmb290bm90ZSIsImNoaWxkcmVuIiwiY2xhc3NlcyIsImNsYXNzbmFtZXMiLCJQQU5FTF9MQVlPVVRfUFJFRklYIiwiY29uZmlnIiwicmVzb2x2ZVBhbmVsTGF5b3V0Q29uZmlnIiwidGl0bGVOb2RlIiwiX2pzeCIsIlR5cG9ncmFwaHkiLCJIZWFkbGluZSIsInNpemUiLCJhcyIsImNvbG9yIiwiZXllYnJvd05vZGUiLCJCb2R5IiwiaWxsdXN0cmF0aW9uTm9kZSIsIkljb25zIiwibmFtZSIsImlsbHVzdHJhdGlvblNpemUiLCJiYWNrTm9kZSIsInR5cGUiLCJQQU5FTF9MQVlPVVRfQkFDS19MQUJFTCIsIm9uQ2xpY2siLCJQQU5FTF9MQVlPVVRfQkFDS19JQ09OX1NJWkUiLCJoYXNIZWFkZXIiLCJoZWFkZXIiLCJfanN4cyIsInN0cm9uZyIsInVuZGVmaW5lZCIsIndpdGhTaXplIiwiYWN0aW9uIiwiX2EiLCJhc3NpZ24iLCJidXR0b25TaXplIiwiZm9vdGVyIiwiQWN0aW9uQmFyIiwiRm9ybUxheW91dCIsImpvaW5DbHMiLCJzdHlsZSIsImNvbmNhdCIsImFjdGlvbkdhcCIsIlBhbmVsTGF5b3V0IiwiZXhwb3J0cyIsIm1lbW8iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQSxJQUFBQSxXQUFBLEdBQUFDLE9BQUE7QUNBQSxJQUFBQyxNQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxVQUFBLEdBQUFGLE9BQUE7QUFDQSxJQUFBRyxXQUFBLEdBQUFILE9BQUE7QUFDQSxJQUFBSSxNQUFBLEdBQUFKLE9BQUE7QUFDQSxJQUFBSyxXQUFBLEdBQUFMLE9BQUE7QUFDQSxJQUFBTSxXQUFBLEdBQUFDLHVCQUFBLENBQUFQLE9BQUE7QUFDQSxJQUFBUSxVQUFBLEdBQUFSLE9BQUE7QUFVQUEsT0FBQTtBQUFpQixTQUFBUyx5QkFBQUMsQ0FBQSw2QkFBQUMsT0FBQSxtQkFBQUMsQ0FBQSxPQUFBRCxPQUFBLElBQUFFLENBQUEsT0FBQUYsT0FBQSxZQUFBRix3QkFBQSxZQUFBQSx5QkFBQUMsQ0FBQSxXQUFBQSxDQUFBLEdBQUFHLENBQUEsR0FBQUQsQ0FBQSxLQUFBRixDQUFBO0FBQUEsU0FBQUgsd0JBQUFHLENBQUEsRUFBQUUsQ0FBQSxTQUFBQSxDQUFBLElBQUFGLENBQUEsSUFBQUEsQ0FBQSxDQUFBSSxVQUFBLFNBQUFKLENBQUEsZUFBQUEsQ0FBQSxnQkFBQUssT0FBQSxDQUFBTCxDQUFBLDBCQUFBQSxDQUFBLHNCQUFBQSxDQUFBLFFBQUFHLENBQUEsR0FB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QU8sSUFBSUMsU0FBUyxJQUFJRSxRQUFRLEdBQzlCLElBQUFRLGVBQUEsRUFBQzRCLG9CQUFTLEVBQUE7SUFDUnJDLFNBQVMsRUFBRUEsU0FBUztJQUNwQkYsT0FBTyxFQUFFaUMsUUFBUSxDQUFDakMsT0FBTyxDQUFDO0lBQzFCQyxTQUFTLEVBQUVnQyxRQUFRLENBQUNoQyxTQUFTLENBQUM7SUFDOUJFLFFBQVEsRUFBRUE7RUFBUSxDQUFBLENBQ2xCLEdBQ0E2QixTQUFTO0VBRWYsT0FDRSxJQUFBckIsZUFBQSxFQUFDNkI7RUFDQztFQUNBO0VBQ0E7RUFBQSxFRDFGQTtJQ3dGQTtJQUNBO0lBQ0E7SUFDQXJELE9BQU8sRUFBQyxNQUFNO0lBQ2QyQixJQUFJLEVBQUMsT0FBTztJQUNaMUIsTUFBTSxFQUFFQSxNQUFNO0lBQ2Q7SUFDQTtJQUNBO0lBQ0FDLEtBQUssRUFBRUEsS0FBSyxLQUFBLElBQUEsSUFBTEEsS0FBSyxLQUFBLEtBQUEsQ0FBQSxHQUFMQSxLQUFLLEdBQUtGLE9BQU8sS0FBSyxPQUFPLEdBQUcsTUFBTSxHQUFHcUIsTUFBTSxDQUFDbkIsS0FBTTtJQUM3REMsU0FBUyxFQUFFLElBQUFtRCxtQkFBTyxFQUFDcEMsT0FBTyxDQUFBLENBQUUsRUFBRUEsT0FBTyxDQUFDbEIsT0FBTyxDQUFDLEVBQUVHLFNBQVMsQ0FBQztJQUMxRG9ELEtBQUssRUFBRTtNQUFFLDBCQUEwQixLQUFBQyxNQUFBLENBQUtuQyxNQUFNLENBQUNvQyxTQUFTO0lBQUksQ0FBbUI7SUFDL0VqRCxLQUFLLEVBQUVrQyxNQUFNO0lBQ2JTLE1BQU0sRUFBRUEsTUFBTTtJQUFBbEMsUUFBQSxFQUViQTtFQUFRLENBQUEsQ0FDRTtBQUVqQixDQUFDO0FBRU0sSUFBTXlDLFdBQVcsR0FBQUMsT0FBQSxDQUFBRCxXQUFBLGdCQUFHLElBQUFFLFdBQUksRUFBQy9ELGVBQWUsQ0FBQyIsImZpbGUiOiJjb21wb25lbnRzL1BhbmVsTGF5b3V0L1BhbmVsTGF5b3V0LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsganN4IGFzIF9qc3gsIGpzeHMgYXMgX2pzeHMgfSBmcm9tIFwicmVhY3QvanN4LXJ1bnRpbWVcIjtcbmltcG9ydCB7IG1lbW8gfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBBY3Rpb25CYXIgfSBmcm9tICcuLi9BY3Rpb25CYXInO1xuaW1wb3J0IHsgRm9ybUxheW91dCB9IGZyb20gJy4uL0Zvcm1MYXlvdXQnO1xuaW1wb3J0IHsgSWNvbnMgfSBmcm9tICcuLi9JY29ucyc7XG5pbXBvcnQgeyBUeXBvZ3JhcGh5IH0gZnJvbSAnLi4vVHlwb2dyYXBoeSc7XG5pbXBvcnQgeyBkZWZhdWx0IGFzIGNsYXNzbmFtZXMsIGpvaW5DbHMgfSBmcm9tICcuLi8uLi91dGlscy9jbGFzc25hbWVzJztcbmltcG9ydCB7IFBBTkVMX0xBWU9VVF9CQUNLX0lDT05fU0laRSwgUEFORUxfTEFZT1VUX0JBQ0tfTEFCRUwsIFBBTkVMX0xBWU9VVF9QUkVGSVgsIHJlc29sdmVQYW5lbExheW91dENvbmZpZywgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgJy4vc3R5bGUnO1xuLyoqXG4gKiBUaGUgbm9uLWZvcm0gY29udGVudCBQQU5FTCDigJQgdGhlIGNvdW50ZXJwYXJ0IHRvIGBGb3JtTGF5b3V0YDogdGhhdCBvbmVcbiAqIGhvbGRzIGZpZWxkcywgdGhpcyBvbmUgaG9sZHMgYW4gaWxsdXN0cmF0aW9uLCBjb3B5IGFuZCBhY3Rpb25zLiBPTkUgc3VyZmFjZVxuICogc2VydmluZyB0d28gaG9zdHM6XG4gKlxuICogICBwYWdlIGhvc3QgICAgPFBhbmVsTGF5b3V0IC8+ICAgICAgICAgICAgICAgICAgICAgICAgIHVzZWQgZGlyZWN0bHlcbiAqICAgZGlhbG9nIGhvc3QgIEJhc2VEaWFsb2cgPSBEaWFsb2coYmFyZSkgKyB0aGlzKG1vZGFsKSBvbmx5IGFkZHMgdGhlIG92ZXJsYXlcbiAqXG4gKiBEZWxpYmVyYXRlbHkgTk9UIG5hbWVkIGZvciBhIHNjZW5hcmlvLCBiZWNhdXNlIGl0IGNhcnJpZXMgc2V2ZXJhbDogYVxuICogdmVyaWZpY2F0aW9uIGNoYWxsZW5nZSwgYSBzdGVwcGVkIHdpemFyZCAoMkZBIHNldHVwIOKAlCBoZW5jZSB0aGUgYmFja1xuICogYXJyb3cpLCBhIHRlcm1pbmFsIHBhZ2Ugd2l0aCBubyBhY3Rpb24gYXQgYWxsLlxuICpcbiAqIE9uIGEgcGFnZSwgT05FIG9mIHRob3NlIHNjZW5hcmlvcyBoYXMgYSBzaGVsbCBvZiBpdHMgb3duIGFuZCB0aGUgcmVzdCBkb1xuICogbm90IOKAlCB3aGljaCBkZWNpZGVzIHdoZXJlIGJ1c2luZXNzIGNvZGUgc2hvdWxkIHJlYWNoOlxuICpcbiAqICAgYSByZXN1bHQgKHN1Y2Nlc3MgLyBmYWlsdXJlIC8gZXhwaXJlZCAvIOKApikgIOKGkiBgUmVzdWx0Rm9ybWAsIGJ1c2luZXNzL0Zvcm1cbiAqICAgYW55dGhpbmcgZWxzZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDihpIgdGhpcywgZGlyZWN0bHlcbiAqXG4gKiBTbyBiZWluZyB1c2VkIGRpcmVjdGx5IGlzIHRoZSBub3JtYWwgY2FzZSBoZXJlLCBub3QgYSBmYWxsYmFjay4gT25seSBhZGRcbiAqIGFub3RoZXIgc2hlbGwgb24gdG9wIHdoZW4gYSBzY2VuYXJpbyBlYXJucyBhIG5hbWUgQU5EIHJlY3VycmluZyBjb3B5IChhXG4gKiBgcHJlc2V0YCk7IGEgc2hlbGwgdGhhdCBqdXN0IHJlLWV4cG9ydHMgdGhpcyBvbmUgYnV5cyBub3RoaW5nLlxuICpcbiAqIEFzc2VtYmx5OlxuICpcbiAqICAgRm9ybUxheW91dCAgICAgICAgICBjYXJkIGNocm9tZSAoc3VyZmFjZSwgaGFpcmxpbmUsIHJhZGl1cykgKyB0aGUgMjRcbiAqICAg4pSCICAgICAgICAgICAgICAgICAgIHBhZGRpbmcgYW5kIDE2IHJlZ2lvbiBnYXAuIEl0cyBgcGFnZS9zbWFsbGAgd2lkdGhcbiAqICAg4pSCICAgICAgICAgICAgICAgICAgICg0NDgsIHRoZSBzaWduLWluIGNhcmQpIGlzIE5PVCB1c2VkIOKAlCB0aGUgcGFuZWwgd2lkdGhcbiAqICAg4pSCICAgICAgICAgICAgICAgICAgIGNvbWVzIGZyb20gdGhlIGNvbmZpZyB0YWJsZS5cbiAqICAg4pSc4pSAIGhlYWRlciBzbG90ICAgICAgYmFjayAvIGlsbHVzdHJhdGlvbiAvIGV5ZWJyb3cgLyB0aXRsZSAvIGRlc2NyaXB0aW9uIGFzXG4gKiAgIOKUgiAgICAgICAgICAgICAgICAgICBPTkUgYmxvY2sgb24gOHB4IHNlYW1zLiBJdCBnb2VzIGluIHRoZSB0aXRsZSBzbG90LCBub3RcbiAqICAg4pSCICAgICAgICAgICAgICAgICAgIHRoZSBjb250ZW50IHJlZ2lvbiwgYmVjYXVzZSBpdCBpcyBhbGwgaGVhZGVyIGNvcHkg4oCUXG4gKiAgIOKUgiAgICAgICAgICAgICAgICAgICB0aGF0IGFsc28ga2VlcHMgaXQgcGlubmVkIHdoZW4gdGhlIGNvbnRlbnQgc2Nyb2xscy5cbiAqICAg4pSc4pSAIGNvbnRlbnQgcmVnaW9uICAgYGNoaWxkcmVuYCDigJQgZnJlZS1mb3JtIChhIFFSIGNvZGUsIGFuIE9UUCBpbnB1dCwgcm93cylcbiAqICAg4pSU4pSAIEFjdGlvbkJhcihmaWxsKSAgdGhlIGFjdGlvbnMuXG4gKlxuICogSXQgb3ducyBubyBjb3B5IGFuZCBubyBsb29zZSBudW1iZXJzOiBldmVyeXRoaW5nIGhvc3Qtc3BlY2lmaWMgY29tZXMgZnJvbVxuICogYFBBTkVMX0xBWU9VVF9DT05GSUdgLCBzbyBhIGRpdmVyZ2VuY2UgYmV0d2VlbiBwYWdlIGFuZCBkaWFsb2cgaXMgYSB2YWx1ZVxuICogY2hhbmdlIGluIHRoYXQgdGFibGUgYW5kIG5vdGhpbmcgZWxzZS5cbiAqL1xuY29uc3QgUGFuZWxMYXlvdXRCYXNlID0gKHsgdmFyaWFudCA9ICdwYWdlJywgc2Nyb2xsLCB3aWR0aCwgY2xhc3NOYW1lLCBzaG93QmFja0ljb24sIG9uQmFjaywgYmFja0ljb24sIGV5ZWJyb3csIHRpdGxlLCBkZXNjcmlwdGlvbiwgZGVzY3JpcHRpb25TdHJvbmcgPSB0cnVlLCBpbGx1c3RyYXRpb24sIHByaW1hcnksIHNlY29uZGFyeSwgZGlyZWN0aW9uLCBmb290bm90ZSwgY2hpbGRyZW4sIH0pID0+IHtcbiAgICBjb25zdCBjbGFzc2VzID0gY2xhc3NuYW1lcyhQQU5FTF9MQVlPVVRfUFJFRklYKTtcbiAgICBjb25zdCBjb25maWcgPSByZXNvbHZlUGFuZWxMYXlvdXRDb25maWcodmFyaWFudCk7XG4gICAgLy8gQSBwbGFpbiBzdHJpbmcgYmVjb21lcyB0aGUgZmFtaWx5IGhlYWRpbmc7IGEgbm9kZSBwYXNzZXMgdGhyb3VnaCBzb1xuICAgIC8vIGNhbGxlcnMgY2FuIGNvbXBvc2UgKGUuZy4gYSBUYWcgYWJvdmUgYSB0d28tbGluZSB0aXRsZSkuXG4gICAgY29uc3QgdGl0bGVOb2RlID0gdHlwZW9mIHRpdGxlID09PSAnc3RyaW5nJyB8fCB0eXBlb2YgdGl0bGUgPT09ICdudW1iZXInID8gKF9qc3goVHlwb2dyYXBoeS5IZWFkbGluZSwgeyBzaXplOiAnc20nLCBhczogJ2gyJywgY29sb3I6ICdkZWZhdWx0JywgY2hpbGRyZW46IHRpdGxlIH0pKSA6ICh0aXRsZSk7XG4gICAgLy8gU2FtZSBjb250cmFjdCBhcyBgdGl0bGVgOiBhIHBsYWluIHN0cmluZyBnZXRzIHRoZSBmYW1pbHkgdHJlYXRtZW50ICh0aGVcbiAgICAvLyBtdXRlZCBsYWJlbCBvZiBcIlN0ZXAgMiBvZiAzXCIpLCBhIG5vZGUgcGFzc2VzIHRocm91Z2ggc28gYSBUYWcgb3IgYVxuICAgIC8vIGNvbXBvc2VkIHJvdyBzdGlsbCB3b3Jrcy4gV2l0aG91dCB0aGlzIGV2ZXJ5IGNhbGxlciB3aXRoIGEgdGV4dCBleWVicm93XG4gICAgLy8gd291bGQgaGFuZC1yb2xsIHRoZSBzYW1lIFR5cG9ncmFwaHkuXG4gICAgLy9cbiAgICAvLyBBbiBFTVBUWSBzdHJpbmcgY291bnRzIGFzIGFic2VudC4gQ2FsbGVycyByb3V0aW5lbHkgaG9sZCB0aGUgZXllYnJvdyBpbiBhXG4gICAgLy8gc3RhdGUgb2JqZWN0IHRoYXQgc3RhcnRzIGFzIGAnJ2AsIGFuZCByZW5kZXJpbmcgYW4gZW1wdHkgbGFiZWwgd291bGQgb3BlblxuICAgIC8vIGFuIDhweCBzZWFtIGFib3ZlIHRoZSB0aXRsZSBmb3Igbm90aGluZyDigJQgc28gdGhleSBjYW4gcGFzcyB0aGUgdmFsdWVcbiAgICAvLyBzdHJhaWdodCB0aHJvdWdoIGluc3RlYWQgb2YgZ3VhcmRpbmcgaXQgYXQgZXZlcnkgY2FsbCBzaXRlLlxuICAgIGNvbnN0IGV5ZWJyb3dOb2RlID0gZXllYnJvdyA9PSBudWxsIHx8IGV5ZWJyb3cgPT09ICcnID8gbnVsbFxuICAgICAgICA6IHR5cGVvZiBleWVicm93ID09PSAnc3RyaW5nJyB8fCB0eXBlb2YgZXllYnJvdyA9PT0gJ251bWJlcicgPyAoX2pzeChUeXBvZ3JhcGh5LkJvZHksIHsgc2l6ZTogJ3NtJywgY29sb3I6ICdkZWZhdWx0LXRlcnRpYXJ5JywgY2hpbGRyZW46IGV5ZWJyb3cgfSkpIDogKGV5ZWJyb3cpO1xuICAgIGNvbnN0IGlsbHVzdHJhdGlvbk5vZGUgPSB0eXBlb2YgaWxsdXN0cmF0aW9uID09PSAnc3RyaW5nJyA/IChfanN4KEljb25zLCB7IG5hbWU6IGlsbHVzdHJhdGlvbiwgc2l6ZTogY29uZmlnLmlsbHVzdHJhdGlvblNpemUgfSkpIDogKGlsbHVzdHJhdGlvbik7XG4gICAgLy8gSXRzIG93biByb3cgYWJvdmUgZXZlcnl0aGluZyBlbHNlLCBvbiB0aGUgYmxvY2sncyA4cHggc2VhbSDigJQgdGhlIHNoYXBlXG4gICAgLy8gc3RlcHBlZCBmbG93cyB1c2UgaW4gYm90aCBob3N0cyAoMkZBIHNldHVwIG9uIGEgcGFnZSwgd2l6YXJkIGRpYWxvZ3MpLlxuICAgIGNvbnN0IGJhY2tOb2RlID0gc2hvd0JhY2tJY29uID8gKF9qc3goXCJidXR0b25cIiwgeyB0eXBlOiAnYnV0dG9uJywgY2xhc3NOYW1lOiBjbGFzc2VzKCdiYWNrJyksIFwiYXJpYS1sYWJlbFwiOiBQQU5FTF9MQVlPVVRfQkFDS19MQUJFTCwgb25DbGljazogb25CYWNrLCBjaGlsZHJlbjogYmFja0ljb24gIT09IG51bGwgJiYgYmFja0ljb24gIT09IHZvaWQgMCA/IGJhY2tJY29uIDogX2pzeChJY29ucywgeyBuYW1lOiAnYXJyb3dMZWZ0Jywgc2l6ZTogUEFORUxfTEFZT1VUX0JBQ0tfSUNPTl9TSVpFIH0pIH0pKSA6IG51bGw7XG4gICAgY29uc3QgaGFzSGVhZGVyID0gc2hvd0JhY2tJY29uIHx8XG4gICAgICAgIGlsbHVzdHJhdGlvbiAhPSBudWxsIHx8XG4gICAgICAgIGV5ZWJyb3dOb2RlICE9IG51bGwgfHxcbiAgICAgICAgdGl0bGUgIT0gbnVsbCB8fFxuICAgICAgICBkZXNjcmlwdGlvbiAhPSBudWxsO1xuICAgIGNvbnN0IGhlYWRlciA9IGhhc0hlYWRlciA/IChfanN4cyhcImRpdlwiLCB7IGNsYXNzTmFtZTogY2xhc3NlcygnaGVhZGVyJyksIGNoaWxkcmVuOiBbYmFja05vZGUsIGlsbHVzdHJhdGlvbk5vZGUgIT0gbnVsbCAmJiAoX2pzeChcImRpdlwiLCB7IGNsYXNzTmFtZTogY2xhc3NlcygnaWxsdXN0cmF0aW9uJyksIGNoaWxkcmVuOiBpbGx1c3RyYXRpb25Ob2RlIH0pKSwgZXllYnJvd05vZGUsIHRpdGxlTm9kZSwgZGVzY3JpcHRpb24gIT0gbnVsbCAmJiAoX2pzeChUeXBvZ3JhcGh5LkJvZHksIHsgYXM6ICdwJywgc2l6ZTogJ21kJywgc3Ryb25nOiBkZXNjcmlwdGlvblN0cm9uZywgY29sb3I6ICdkZWZhdWx0LXNlY29uZGFyeScsIGNoaWxkcmVuOiBkZXNjcmlwdGlvbiB9KSldIH0pKSA6IHVuZGVmaW5lZDtcbiAgICAvLyBUaGUgYmFyIG93bnMgdGhlIGJ1dHRvbiBzaXplLCBzbyB0aGUgZmFtaWx5IHNpemUgaXMgYXBwbGllZCBwZXIgYWN0aW9uXG4gICAgLy8gcmF0aGVyIHRoYW4gYXMgYSBiYXItbGV2ZWwgcHJvcDsgYW4gZXhwbGljaXQgcGVyLWFjdGlvbiBgc2l6ZWAgc3RpbGwgd2lucy5cbiAgICBjb25zdCB3aXRoU2l6ZSA9IChhY3Rpb24pID0+IHsgdmFyIF9hOyByZXR1cm4gYWN0aW9uICYmIE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSwgYWN0aW9uKSwgeyBzaXplOiAoX2EgPSBhY3Rpb24uc2l6ZSkgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogY29uZmlnLmJ1dHRvblNpemUgfSk7IH07XG4gICAgY29uc3QgZm9vdGVyID0gcHJpbWFyeSB8fCBzZWNvbmRhcnkgfHwgZm9vdG5vdGUgPyAoX2pzeChBY3Rpb25CYXIsIHsgZGlyZWN0aW9uOiBkaXJlY3Rpb24sIHByaW1hcnk6IHdpdGhTaXplKHByaW1hcnkpLCBzZWNvbmRhcnk6IHdpdGhTaXplKHNlY29uZGFyeSksIGZvb3Rub3RlOiBmb290bm90ZSB9KSkgOiB1bmRlZmluZWQ7XG4gICAgcmV0dXJuIChfanN4KEZvcm1MYXlvdXRcbiAgICAvLyBgcGFnZS9zbWFsbGAgaXMgdXNlZCBmb3IgaXRzIDI0IHBhZGRpbmcgYW5kIDE2IHJlZ2lvbiBnYXAsIHdoaWNoIGFyZVxuICAgIC8vIGFscmVhZHkgdGhlIHJlc3VsdCBmYW1pbHkncyBudW1iZXJzLiBJdHMgNDQ4IHdpZHRoIGlzIE5PVCDigJQgdGhhdCBpc1xuICAgIC8vIHRoZSBzaWduLWluIGNhcmQ7IHRoZSByZXN1bHQgcGFuZWwgaXMgMzgwLCBmcm9tIHRoZSBjb25maWcgdGFibGUuXG4gICAgLCB7IFxuICAgICAgICAvLyBgcGFnZS9zbWFsbGAgaXMgdXNlZCBmb3IgaXRzIDI0IHBhZGRpbmcgYW5kIDE2IHJlZ2lvbiBnYXAsIHdoaWNoIGFyZVxuICAgICAgICAvLyBhbHJlYWR5IHRoZSByZXN1bHQgZmFtaWx5J3MgbnVtYmVycy4gSXRzIDQ0OCB3aWR0aCBpcyBOT1Qg4oCUIHRoYXQgaXNcbiAgICAgICAgLy8gdGhlIHNpZ24taW4gY2FyZDsgdGhlIHJlc3VsdCBwYW5lbCBpcyAzODAsIGZyb20gdGhlIGNvbmZpZyB0YWJsZS5cbiAgICAgICAgdmFyaWFudDogJ3BhZ2UnLCBzaXplOiAnc21hbGwnLCBzY3JvbGw6IHNjcm9sbCwgXG4gICAgICAgIC8vIEluIGEgZGlhbG9nIHRoZSBEaWFsb2cgcGFuZWwgY2FycmllcyB0aGUgd2lkdGggKEJhc2VEaWFsb2cgcmVhZHMgdGhlXG4gICAgICAgIC8vIHNhbWUgZW50cnkpIGFuZCB0aGUgbGF5b3V0IGZpbGxzIGl0OiBzaXppbmcgYSBiYXJlIHBhbmVsIGZyb20gaXRzXG4gICAgICAgIC8vIGNoaWxkIGhpdHMgdGhlIHNocmluay10by1maXQgcGVyY2VudGFnZSBjaXJjdWxhcml0eS5cbiAgICAgICAgd2lkdGg6IHdpZHRoICE9PSBudWxsICYmIHdpZHRoICE9PSB2b2lkIDAgPyB3aWR0aCA6ICh2YXJpYW50ID09PSAnbW9kYWwnID8gJzEwMCUnIDogY29uZmlnLndpZHRoKSwgY2xhc3NOYW1lOiBqb2luQ2xzKGNsYXNzZXMoKSwgY2xhc3Nlcyh2YXJpYW50KSwgY2xhc3NOYW1lKSwgc3R5bGU6IHsgJy0tZm9ybS1sYXlvdXQtYWN0aW9uLWdhcCc6IGAke2NvbmZpZy5hY3Rpb25HYXB9cHhgIH0sIHRpdGxlOiBoZWFkZXIsIGZvb3RlcjogZm9vdGVyLCBjaGlsZHJlbjogY2hpbGRyZW4gfSkpO1xufTtcbmV4cG9ydCBjb25zdCBQYW5lbExheW91dCA9IG1lbW8oUGFuZWxMYXlvdXRCYXNlKTsiLG51bGxdLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjIn0=
@@ -0,0 +1,60 @@
1
+ export declare const PANEL_LAYOUT_PREFIX = "panel-layout";
2
+ /** Back-arrow control: 24px icon, and its accessible name. */
3
+ export declare const PANEL_LAYOUT_BACK_ICON_SIZE = 24;
4
+ export declare const PANEL_LAYOUT_BACK_LABEL = "Go back";
5
+ /**
6
+ * THE density table for content panels — the single thing to edit when the
7
+ * design changes. Same shape as `FORM_LAYOUT_CONFIG`: one entry per host, so
8
+ * a divergence between the two is a value change, never a structural one.
9
+ *
10
+ * The two entries are currently IDENTICAL, and that is the design: a panel
11
+ * renders the same on a page and in a dialog, the only difference being
12
+ * whether a `Dialog(bare)` is wrapped around it. They are still spelled out
13
+ * separately so that (a) the sameness reads as deliberate rather than as an
14
+ * oversight, and (b) a divergence later is a value change here and nothing
15
+ * else — no consumer passes these numbers, they only pass `variant`.
16
+ *
17
+ * `width` is the panel width used in BOTH hosts (380). It is NOT inherited
18
+ * from FormLayout's `page/small` density — that entry is 448, the app's
19
+ * sign-in card, a different surface. Only the padding (24) and the region gap
20
+ * (16) come from that density, and those already match. Inside a dialog the
21
+ * value goes on the Dialog panel and the layout fills at 100%: sizing a bare
22
+ * panel from its child hits the shrink-to-fit percentage circularity (the
23
+ * same reason FormDialog gives).
24
+ */
25
+ export declare const PANEL_LAYOUT_CONFIG: {
26
+ /** Standalone on a page. */
27
+ readonly page: {
28
+ /** Panel width (px). */
29
+ readonly width: 380;
30
+ /** Illustration above the header copy (px). */
31
+ readonly illustrationSize: 52;
32
+ /** Footer action button size. */
33
+ readonly buttonSize: "medium";
34
+ /** Gap between footer action buttons (px); ActionBar reads it via var. */
35
+ readonly actionGap: 8;
36
+ };
37
+ /** Inside a dialog, wrapped by `BaseDialog` in a `Dialog(bare)`. */
38
+ readonly modal: {
39
+ readonly width: 380;
40
+ readonly illustrationSize: 52;
41
+ readonly buttonSize: "medium";
42
+ readonly actionGap: 8;
43
+ };
44
+ };
45
+ export type PanelLayoutVariant = keyof typeof PANEL_LAYOUT_CONFIG;
46
+ export declare const resolvePanelLayoutConfig: (variant: PanelLayoutVariant) => {
47
+ /** Panel width (px). */
48
+ readonly width: 380;
49
+ /** Illustration above the header copy (px). */
50
+ readonly illustrationSize: 52;
51
+ /** Footer action button size. */
52
+ readonly buttonSize: "medium";
53
+ /** Gap between footer action buttons (px); ActionBar reads it via var. */
54
+ readonly actionGap: 8;
55
+ } | {
56
+ readonly width: 380;
57
+ readonly illustrationSize: 52;
58
+ readonly buttonSize: "medium";
59
+ readonly actionGap: 8;
60
+ };
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.resolvePanelLayoutConfig = exports.PANEL_LAYOUT_PREFIX = exports.PANEL_LAYOUT_CONFIG = exports.PANEL_LAYOUT_BACK_LABEL = exports.PANEL_LAYOUT_BACK_ICON_SIZE = void 0;
7
+ var PANEL_LAYOUT_PREFIX = exports.PANEL_LAYOUT_PREFIX = 'panel-layout';
8
+ /** Back-arrow control: 24px icon, and its accessible name. */
9
+ var PANEL_LAYOUT_BACK_ICON_SIZE = exports.PANEL_LAYOUT_BACK_ICON_SIZE = 24;
10
+ var PANEL_LAYOUT_BACK_LABEL = exports.PANEL_LAYOUT_BACK_LABEL = 'Go back';
11
+ /**
12
+ * THE density table for content panels — the single thing to edit when the
13
+ * design changes. Same shape as `FORM_LAYOUT_CONFIG`: one entry per host, so
14
+ * a divergence between the two is a value change, never a structural one.
15
+ *
16
+ * The two entries are currently IDENTICAL, and that is the design: a panel
17
+ * renders the same on a page and in a dialog, the only difference being
18
+ * whether a `Dialog(bare)` is wrapped around it. They are still spelled out
19
+ * separately so that (a) the sameness reads as deliberate rather than as an
20
+ * oversight, and (b) a divergence later is a value change here and nothing
21
+ * else — no consumer passes these numbers, they only pass `variant`.
22
+ *
23
+ * `width` is the panel width used in BOTH hosts (380). It is NOT inherited
24
+ * from FormLayout's `page/small` density — that entry is 448, the app's
25
+ * sign-in card, a different surface. Only the padding (24) and the region gap
26
+ * (16) come from that density, and those already match. Inside a dialog the
27
+ * value goes on the Dialog panel and the layout fills at 100%: sizing a bare
28
+ * panel from its child hits the shrink-to-fit percentage circularity (the
29
+ * same reason FormDialog gives).
30
+ */
31
+ var PANEL_LAYOUT_CONFIG = exports.PANEL_LAYOUT_CONFIG = {
32
+ /** Standalone on a page. */
33
+ page: {
34
+ /** Panel width (px). */
35
+ width: 380,
36
+ /** Illustration above the header copy (px). */
37
+ illustrationSize: 52,
38
+ /** Footer action button size. */
39
+ buttonSize: 'medium',
40
+ /** Gap between footer action buttons (px); ActionBar reads it via var. */
41
+ actionGap: 8
42
+ },
43
+ /** Inside a dialog, wrapped by `BaseDialog` in a `Dialog(bare)`. */
44
+ modal: {
45
+ width: 380,
46
+ illustrationSize: 52,
47
+ buttonSize: 'medium',
48
+ actionGap: 8
49
+ }
50
+ };
51
+ var resolvePanelLayoutConfig = exports.resolvePanelLayoutConfig = function resolvePanelLayoutConfig(variant) {
52
+ return PANEL_LAYOUT_CONFIG[variant];
53
+ };
54
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvUGFuZWxMYXlvdXQvY29uc3RhbnRzLnRzIiwiY29tcG9uZW50cy9QYW5lbExheW91dC9jb25zdGFudHMuanMiXSwibmFtZXMiOlsiUEFORUxfTEFZT1VUX1BSRUZJWCIsImV4cG9ydHMiLCJQQU5FTF9MQVlPVVRfQkFDS19JQ09OX1NJWkUiLCJQQU5FTF9MQVlPVVRfQkFDS19MQUJFTCIsIlBBTkVMX0xBWU9VVF9DT05GSUciLCJwYWdlIiwid2lkdGgiLCJpbGx1c3RyYXRpb25TaXplIiwiYnV0dG9uU2l6ZSIsImFjdGlvbkdhcCIsIm1vZGFsIiwicmVzb2x2ZVBhbmVsTGF5b3V0Q29uZmlnIiwidmFyaWFudCJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBRU8sSUFBTUEsbUJBQW1CLEdBQUFDLE9BQUEsQ0FBQUQsbUJBQUEsR0FBRyxjQUFjO0FBRWpEO0FBQ08sSUFBTUUsMkJBQTJCLEdBQUFELE9BQUEsQ0FBQUMsMkJBQUEsR0FBRyxFQUFFO0FBQ3RDLElBQU1DLHVCQUF1QixHQUFBRixPQUFBLENBQUFFLHVCQUFBLEdBQUcsU0FBUztBQUVoRDtBQ0hBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FES08sSUFBTUMsbUJBQW1CLEdBQUFILE9BQUEsQ0FBQUcsbUJBQUEsR0FBRztFQUNqQztFQUNBQyxJQUFJLEVBQUU7SUFDSjtJQUNBQyxLQUFLLEVBQUUsR0FBRztJQUNWO0lBQ0FDLGdCQUFnQixFQUFFLEVBQUU7SUFDcEI7SUFDQUMsVUFBVSxFQUFFLFFBQTZCO0lBQ3pDO0lBQ0FDLFNBQVMsRUFBRTtFQ0hYLENESUQ7RUFDRDtFQUNBQyxLQUFLLEVBQUU7SUFDTEosS0FBSyxFQUFFLEdBQUc7SUFDVkMsZ0JBQWdCLEVBQUUsRUFBRTtJQUNwQkMsVUFBVSxFQUFFLFFBQTZCO0lBQ3pDQyxTQUFTLEVBQUU7RUNIWDtBQUNKLENESVU7QUFJSCxJQUFNRSx3QkFBd0IsR0FBQVYsT0FBQSxDQUFBVSx3QkFBQSxHQUFHLFNBQTNCQSx3QkFBd0JBLENBQUlDLE9BQTJCO0VBQUEsT0FDbEVSLG1CQUFtQixDQUFDUSxPQUFPLENBQUM7QUFBQSIsImZpbGUiOiJjb21wb25lbnRzL1BhbmVsTGF5b3V0L2NvbnN0YW50cy5qcyIsInNvdXJjZXNDb250ZW50IjpbbnVsbCwiZXhwb3J0IGNvbnN0IFBBTkVMX0xBWU9VVF9QUkVGSVggPSAncGFuZWwtbGF5b3V0Jztcbi8qKiBCYWNrLWFycm93IGNvbnRyb2w6IDI0cHggaWNvbiwgYW5kIGl0cyBhY2Nlc3NpYmxlIG5hbWUuICovXG5leHBvcnQgY29uc3QgUEFORUxfTEFZT1VUX0JBQ0tfSUNPTl9TSVpFID0gMjQ7XG5leHBvcnQgY29uc3QgUEFORUxfTEFZT1VUX0JBQ0tfTEFCRUwgPSAnR28gYmFjayc7XG4vKipcbiAqIFRIRSBkZW5zaXR5IHRhYmxlIGZvciBjb250ZW50IHBhbmVscyDigJQgdGhlIHNpbmdsZSB0aGluZyB0byBlZGl0IHdoZW4gdGhlXG4gKiBkZXNpZ24gY2hhbmdlcy4gU2FtZSBzaGFwZSBhcyBgRk9STV9MQVlPVVRfQ09ORklHYDogb25lIGVudHJ5IHBlciBob3N0LCBzb1xuICogYSBkaXZlcmdlbmNlIGJldHdlZW4gdGhlIHR3byBpcyBhIHZhbHVlIGNoYW5nZSwgbmV2ZXIgYSBzdHJ1Y3R1cmFsIG9uZS5cbiAqXG4gKiBUaGUgdHdvIGVudHJpZXMgYXJlIGN1cnJlbnRseSBJREVOVElDQUwsIGFuZCB0aGF0IGlzIHRoZSBkZXNpZ246IGEgcGFuZWxcbiAqIHJlbmRlcnMgdGhlIHNhbWUgb24gYSBwYWdlIGFuZCBpbiBhIGRpYWxvZywgdGhlIG9ubHkgZGlmZmVyZW5jZSBiZWluZ1xuICogd2hldGhlciBhIGBEaWFsb2coYmFyZSlgIGlzIHdyYXBwZWQgYXJvdW5kIGl0LiBUaGV5IGFyZSBzdGlsbCBzcGVsbGVkIG91dFxuICogc2VwYXJhdGVseSBzbyB0aGF0IChhKSB0aGUgc2FtZW5lc3MgcmVhZHMgYXMgZGVsaWJlcmF0ZSByYXRoZXIgdGhhbiBhcyBhblxuICogb3ZlcnNpZ2h0LCBhbmQgKGIpIGEgZGl2ZXJnZW5jZSBsYXRlciBpcyBhIHZhbHVlIGNoYW5nZSBoZXJlIGFuZCBub3RoaW5nXG4gKiBlbHNlIOKAlCBubyBjb25zdW1lciBwYXNzZXMgdGhlc2UgbnVtYmVycywgdGhleSBvbmx5IHBhc3MgYHZhcmlhbnRgLlxuICpcbiAqIGB3aWR0aGAgaXMgdGhlIHBhbmVsIHdpZHRoIHVzZWQgaW4gQk9USCBob3N0cyAoMzgwKS4gSXQgaXMgTk9UIGluaGVyaXRlZFxuICogZnJvbSBGb3JtTGF5b3V0J3MgYHBhZ2Uvc21hbGxgIGRlbnNpdHkg4oCUIHRoYXQgZW50cnkgaXMgNDQ4LCB0aGUgYXBwJ3NcbiAqIHNpZ24taW4gY2FyZCwgYSBkaWZmZXJlbnQgc3VyZmFjZS4gT25seSB0aGUgcGFkZGluZyAoMjQpIGFuZCB0aGUgcmVnaW9uIGdhcFxuICogKDE2KSBjb21lIGZyb20gdGhhdCBkZW5zaXR5LCBhbmQgdGhvc2UgYWxyZWFkeSBtYXRjaC4gSW5zaWRlIGEgZGlhbG9nIHRoZVxuICogdmFsdWUgZ29lcyBvbiB0aGUgRGlhbG9nIHBhbmVsIGFuZCB0aGUgbGF5b3V0IGZpbGxzIGF0IDEwMCU6IHNpemluZyBhIGJhcmVcbiAqIHBhbmVsIGZyb20gaXRzIGNoaWxkIGhpdHMgdGhlIHNocmluay10by1maXQgcGVyY2VudGFnZSBjaXJjdWxhcml0eSAodGhlXG4gKiBzYW1lIHJlYXNvbiBGb3JtRGlhbG9nIGdpdmVzKS5cbiAqL1xuZXhwb3J0IGNvbnN0IFBBTkVMX0xBWU9VVF9DT05GSUcgPSB7XG4gICAgLyoqIFN0YW5kYWxvbmUgb24gYSBwYWdlLiAqL1xuICAgIHBhZ2U6IHtcbiAgICAgICAgLyoqIFBhbmVsIHdpZHRoIChweCkuICovXG4gICAgICAgIHdpZHRoOiAzODAsXG4gICAgICAgIC8qKiBJbGx1c3RyYXRpb24gYWJvdmUgdGhlIGhlYWRlciBjb3B5IChweCkuICovXG4gICAgICAgIGlsbHVzdHJhdGlvblNpemU6IDUyLFxuICAgICAgICAvKiogRm9vdGVyIGFjdGlvbiBidXR0b24gc2l6ZS4gKi9cbiAgICAgICAgYnV0dG9uU2l6ZTogJ21lZGl1bScsXG4gICAgICAgIC8qKiBHYXAgYmV0d2VlbiBmb290ZXIgYWN0aW9uIGJ1dHRvbnMgKHB4KTsgQWN0aW9uQmFyIHJlYWRzIGl0IHZpYSB2YXIuICovXG4gICAgICAgIGFjdGlvbkdhcDogOCxcbiAgICB9LFxuICAgIC8qKiBJbnNpZGUgYSBkaWFsb2csIHdyYXBwZWQgYnkgYEJhc2VEaWFsb2dgIGluIGEgYERpYWxvZyhiYXJlKWAuICovXG4gICAgbW9kYWw6IHtcbiAgICAgICAgd2lkdGg6IDM4MCxcbiAgICAgICAgaWxsdXN0cmF0aW9uU2l6ZTogNTIsXG4gICAgICAgIGJ1dHRvblNpemU6ICdtZWRpdW0nLFxuICAgICAgICBhY3Rpb25HYXA6IDgsXG4gICAgfSxcbn07XG5leHBvcnQgY29uc3QgcmVzb2x2ZVBhbmVsTGF5b3V0Q29uZmlnID0gKHZhcmlhbnQpID0+IFBBTkVMX0xBWU9VVF9DT05GSUdbdmFyaWFudF07Il0sInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMifQ==
@@ -0,0 +1,6 @@
1
+ import { PanelLayout } from './PanelLayout';
2
+ export { PanelLayout } from './PanelLayout';
3
+ export default PanelLayout;
4
+ export * from './interface';
5
+ export { PANEL_LAYOUT_CONFIG, PANEL_LAYOUT_PREFIX, resolvePanelLayoutConfig, } from './constants';
6
+ export type { PanelLayoutVariant } from './constants';
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _exportNames = {
7
+ PanelLayout: true,
8
+ PANEL_LAYOUT_CONFIG: true,
9
+ PANEL_LAYOUT_PREFIX: true,
10
+ resolvePanelLayoutConfig: true
11
+ };
12
+ Object.defineProperty(exports, "PANEL_LAYOUT_CONFIG", {
13
+ enumerable: true,
14
+ get: function get() {
15
+ return _constants.PANEL_LAYOUT_CONFIG;
16
+ }
17
+ });
18
+ Object.defineProperty(exports, "PANEL_LAYOUT_PREFIX", {
19
+ enumerable: true,
20
+ get: function get() {
21
+ return _constants.PANEL_LAYOUT_PREFIX;
22
+ }
23
+ });
24
+ Object.defineProperty(exports, "PanelLayout", {
25
+ enumerable: true,
26
+ get: function get() {
27
+ return _PanelLayout.PanelLayout;
28
+ }
29
+ });
30
+ exports["default"] = void 0;
31
+ Object.defineProperty(exports, "resolvePanelLayoutConfig", {
32
+ enumerable: true,
33
+ get: function get() {
34
+ return _constants.resolvePanelLayoutConfig;
35
+ }
36
+ });
37
+ var _PanelLayout = require("./PanelLayout");
38
+ var _interface = require("./interface");
39
+ Object.keys(_interface).forEach(function (key) {
40
+ if (key === "default" || key === "__esModule") return;
41
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
42
+ if (key in exports && exports[key] === _interface[key]) return;
43
+ Object.defineProperty(exports, key, {
44
+ enumerable: true,
45
+ get: function get() {
46
+ return _interface[key];
47
+ }
48
+ });
49
+ });
50
+ var _constants = require("./constants");
51
+ var _default = exports["default"] = _PanelLayout.PanelLayout;
52
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvUGFuZWxMYXlvdXQvaW5kZXgudHMiXSwibmFtZXMiOlsiX1BhbmVsTGF5b3V0IiwicmVxdWlyZSIsIl9pbnRlcmZhY2UiLCJPYmplY3QiLCJrZXlzIiwiZm9yRWFjaCIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsIl9leHBvcnROYW1lcyIsImV4cG9ydHMiLCJkZWZpbmVQcm9wZXJ0eSIsImVudW1lcmFibGUiLCJnZXQiLCJfY29uc3RhbnRzIiwiX2RlZmF1bHQiLCJQYW5lbExheW91dCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsSUFBQUEsWUFBQSxHQUFBQyxPQUFBO0FBTUEsSUFBQUMsVUFBQSxHQUFBRCxPQUFBO0FBQUFFLE1BQUEsQ0FBQUMsSUFBQSxDQUFBRixVQUFBLEVBQUFHLE9BQUEsV0FBQUMsR0FBQTtFQUFBLElBQUFBLEdBQUEsa0JBQUFBLEdBQUE7RUFBQSxJQUFBSCxNQUFBLENBQUFJLFNBQUEsQ0FBQUMsY0FBQSxDQUFBQyxJQUFBLENBQUFDLFlBQUEsRUFBQUosR0FBQTtFQUFBLElBQUFBLEdBQUEsSUFBQUssT0FBQSxJQUFBQSxPQUFBLENBQUFMLEdBQUEsTUFBQUosVUFBQSxDQUFBSSxHQUFBO0VBQUFILE1BQUEsQ0FBQVMsY0FBQSxDQUFBRCxPQUFBLEVBQUFMLEdBQUE7SUFBQU8sVUFBQTtJQUFBQyxHQUFBLFdBQUFBLElBQUE7TUFBQSxPQUFBWixVQUFBLENBQUFJLEdBQUE7SUFBQTtFQUFBO0FBQUE7QUFDQSxJQUFBUyxVQUFBLEdBQUFkLE9BQUE7QUFJcUIsSUFBQWUsUUFBQSxHQUFBTCxPQUFBLGNBUE5NLHdCQUFXIiwiZmlsZSI6ImNvbXBvbmVudHMvUGFuZWxMYXlvdXQvaW5kZXguanMiLCJzb3VyY2VzQ29udGVudCI6W251bGxdLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjIn0=
@@ -0,0 +1,73 @@
1
+ import type { ReactNode } from 'react';
2
+ import type { ActionBarAction, ActionBarDirection, ActionBarFootnote } from "../ActionBar";
3
+ import type { FormLayoutProps } from "../FormLayout";
4
+ import type { IconName } from "../Icons";
5
+ import type { PanelLayoutVariant } from './constants';
6
+ export interface PanelLayoutProps extends Pick<FormLayoutProps, 'width' | 'className'> {
7
+ /**
8
+ * Which host this panel renders in. Selects the entry in
9
+ * `PANEL_LAYOUT_CONFIG` and the underlying FormLayout density / scroll
10
+ * policy. `page` (default) is the standalone card; `modal` is the panel
11
+ * `BaseDialog` wraps in a `Dialog(bare)`.
12
+ *
13
+ * There is deliberately no `size`: a result has ONE shape. `PageForm`
14
+ * exposes a size axis because a form's density varies with its field count.
15
+ */
16
+ variant?: PanelLayoutVariant;
17
+ /**
18
+ * Override the host's scroll policy. `page` never scrolls internally;
19
+ * `modal` pins header/footer and scrolls the content region when
20
+ * height-constrained. `BaseDialog` maps its `fixed` prop onto this — the
21
+ * two defaults are opposites, so that mapping must stay explicit.
22
+ */
23
+ scroll?: boolean;
24
+ /**
25
+ * Show the back arrow at the TOP of the header block, on the same 8px seam
26
+ * as everything else in it.
27
+ *
28
+ * The panel owns this control in BOTH hosts — stepped page flows (2FA setup)
29
+ * carry it just like dialog flows do. It belongs to the content flow, unlike
30
+ * the dialog's close icon, which is absolutely positioned overlay chrome and
31
+ * stays with Dialog. That is also why `Dialog(bare)` does not render it.
32
+ */
33
+ showBackIcon?: boolean;
34
+ /** Fires when the back arrow is activated. */
35
+ onBack?: () => void;
36
+ /** Replace the default back arrow node (keeps its slot and seam). */
37
+ backIcon?: ReactNode;
38
+ /**
39
+ * Small label row above the title ("Step 2 of 3"). Same contract as
40
+ * `title`: a plain string is rendered in the family style, a node passes
41
+ * through (e.g. a Tag). An empty string counts as absent, so a value held
42
+ * in state needs no guard at the call site.
43
+ */
44
+ eyebrow?: ReactNode;
45
+ /** Heading. A plain string renders as `Headline sm`. */
46
+ title?: ReactNode;
47
+ /** Supporting copy under the title. */
48
+ description?: ReactNode;
49
+ /**
50
+ * Render the description in the strong (medium) weight — the family spec.
51
+ * Defaults to `true`. Pass `false` for plain body copy, e.g. when the copy
52
+ * embeds an email (or other span) that should be the emphasized part.
53
+ */
54
+ descriptionStrong?: boolean;
55
+ /** Illustration above the title, `IconName` or node. */
56
+ illustration?: ReactNode | IconName;
57
+ /**
58
+ * Primary action. With only one action the button spans the full row; with
59
+ * both, secondary sits left and they split the row evenly.
60
+ */
61
+ primary?: ActionBarAction;
62
+ /** Optional secondary (left) action. */
63
+ secondary?: ActionBarAction;
64
+ /**
65
+ * Action arrangement, forwarded to ActionBar: `horizontal` (default,
66
+ * row-splitting) or `vertical` (stacked full-width).
67
+ */
68
+ direction?: ActionBarDirection;
69
+ /** Optional centered footnote row below the actions. */
70
+ footnote?: ActionBarFootnote;
71
+ /** Extra content between the header block and the actions (e.g. bricks). */
72
+ children?: ReactNode;
73
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50cy9QYW5lbExheW91dC9pbnRlcmZhY2UuanMiLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMiLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvUGFuZWxMYXlvdXQvaW50ZXJmYWNlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7fTsiXSwibWFwcGluZ3MiOiIiLCJpZ25vcmVMaXN0IjpbXX0=