diff options
author | Roan Kattouw <roan.kattouw@gmail.com> | 2024-05-01 20:27:22 -0700 |
---|---|---|
committer | Roan Kattouw <roan.kattouw@gmail.com> | 2024-08-22 17:20:24 -0700 |
commit | 8a39d83175cbe47a0a66ef95d765bcf8952e5f77 (patch) | |
tree | d1ac3e11d1c4fa51af11e416771f8a935c66c1aa /tests/phpunit/data | |
parent | 38066e53178bbf7df24742c116b1c5b2f92852fa (diff) | |
download | mediawikicore-8a39d83175cbe47a0a66ef95d765bcf8952e5f77.tar.gz mediawikicore-8a39d83175cbe47a0a66ef95d765bcf8952e5f77.zip |
Codex: Allow a local development version to be used
Developers can use this to test their local version of Codex with
MediaWiki by pointing $wgCodexDevelopmentDir to their local clone of the
Codex repo, e.g. $wgCodexDevelopmentDir = '/home/yourname/git/codex';
Setting $wgCodexDevelopmentDir affects where the following things come
from:
- Codex JS/CSS files for the full library
- Codex JS/CSS files for code-split chunks, and the manifest.json file
that points to them
- Icons retrieved by CodexModule::getIcons()
- CSS-only icons imported in Less
- Design tokens imported in Less
Other changes in this patch:
- Add CodexModule::makeFilePath() to centralize the repeated path
concatenation. This makes it easier to switch out the regular path for
the dev mode path.
- Replace all uses of $IP (which is deprecated) and MW_INSTALL_PATH in
CodexModule with the BaseDirectory config setting.
- Make CodexModule::getIcons() reset its static cache if the path to the
icons file changes. Without this, it's impossible to make the unit
tests pass.
- Move the i18n messages code from the CodexModule constructor to
getMessages(). It can't be in the constructor because makeFilePath()
doesn't work there (it fails because the Config object hasn't been set
up yet).
- Add a 'mediawiki.skin.codex' import path so that we can stop
hard-coding the path to the Codex mixins file. Without this, we can't
make the Codex mixins come from the right place in development mode.
- Consider $wgCodexDevelopmentDir in setting the cache key for compiled
Less code, since changing this setting can change the output of Less
compilation (by changing design tokens, icons or mixins).
- Add unit tests for (the non-dev mode behavior of)
CodexModule::getIcons() and the i18n message key handling.
Bug: T314507
Change-Id: I11c6a81a1ba34fe10f4b1c98bf76f0db40c1ce98
Diffstat (limited to 'tests/phpunit/data')
25 files changed, 869 insertions, 0 deletions
diff --git a/tests/phpunit/data/less/import-codex-icons-devmode.css b/tests/phpunit/data/less/import-codex-icons-devmode.css new file mode 100644 index 000000000000..0b5b300cc955 --- /dev/null +++ b/tests/phpunit/data/less/import-codex-icons-devmode.css @@ -0,0 +1,3 @@ +.foo:before { + content: 'test add icon'; +} diff --git a/tests/phpunit/data/less/import-codex-tokens-devmode.css b/tests/phpunit/data/less/import-codex-tokens-devmode.css new file mode 100644 index 000000000000..9b5c1c9efddd --- /dev/null +++ b/tests/phpunit/data/less/import-codex-tokens-devmode.css @@ -0,0 +1,3 @@ +.foo { + width: 'test size 100'; +} diff --git a/tests/phpunit/data/resourceloader/codex-devmode/packages/codex-design-tokens/dist/theme-wikimedia-ui.less b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex-design-tokens/dist/theme-wikimedia-ui.less new file mode 100644 index 000000000000..620ff2dec784 --- /dev/null +++ b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex-design-tokens/dist/theme-wikimedia-ui.less @@ -0,0 +1 @@ +@size-100: 'test size 100'; diff --git a/tests/phpunit/data/resourceloader/codex-devmode/packages/codex-icons/dist/codex-icon-paths.less b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex-icons/dist/codex-icon-paths.less new file mode 100644 index 000000000000..1afe34a26730 --- /dev/null +++ b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex-icons/dist/codex-icon-paths.less @@ -0,0 +1 @@ +@cdx-icon-add: 'test add icon'; diff --git a/tests/phpunit/data/resourceloader/codex-devmode/packages/codex-icons/dist/codex-icons.json b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex-icons/dist/codex-icons.json new file mode 100644 index 000000000000..4e710df0405d --- /dev/null +++ b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex-icons/dist/codex-icons.json @@ -0,0 +1 @@ +{"cdxIconAdd":"test add icon","cdxIconNext":"test next icon"}
\ No newline at end of file diff --git a/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/codex.style.css b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/codex.style.css new file mode 100644 index 000000000000..7bf9000dad5f --- /dev/null +++ b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/codex.style.css @@ -0,0 +1 @@ +/* Placeholder for tests */ diff --git a/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/codex.umd.cjs b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/codex.umd.cjs new file mode 100644 index 000000000000..335461eb9bab --- /dev/null +++ b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/codex.umd.cjs @@ -0,0 +1 @@ +// Placeholder file for tests
\ No newline at end of file diff --git a/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/messageKeys.json b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/messageKeys.json new file mode 100644 index 000000000000..feeace382b95 --- /dev/null +++ b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/messageKeys.json @@ -0,0 +1,4 @@ +[ + "cdx-test-message-1", + "cdx-test-message-2" +]
\ No newline at end of file diff --git a/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/CdxButton.css b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/CdxButton.css new file mode 100644 index 000000000000..5d75453cbacf --- /dev/null +++ b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/CdxButton.css @@ -0,0 +1 @@ +.cdx-button{box-sizing:border-box;min-width:32px;min-height:32px;max-width:28em;margin:0;border-width:1px;border-style:solid;border-radius:2px;padding-right:11px;padding-left:11px;font-family:inherit;font-size:inherit;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-transform:none;transition-property:background-color,color,border-color,box-shadow;transition-duration:.1s}.cdx-button--size-large{min-width:44px;min-height:44px;padding-right:15px;padding-left:15px}.cdx-button--icon-only{padding-right:5px;padding-left:5px}.cdx-button--icon-only.cdx-button--size-large{padding-right:11px;padding-left:11px}.cdx-button::-moz-focus-inner{border:0;padding:0}.cdx-button .cdx-button__icon,.cdx-button .cdx-icon{vertical-align:middle}.cdx-button .cdx-icon{color:inherit}.cdx-button--fake-button{display:inline-flex;align-items:center;justify-content:center}.cdx-button--fake-button,.cdx-button--fake-button:hover,.cdx-button--fake-button:focus{text-decoration:none}.cdx-button--fake-button:not(.cdx-button--icon-only) .cdx-button__icon{margin-right:4px}.cdx-button:enabled,.cdx-button.cdx-button--fake-button--enabled{background-color:#f8f9fa;color:#202122;border-color:#a2a9b1}@supports ((-webkit-mask-image: none) or (mask-image: none)){.cdx-button:enabled .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled .cdx-button__icon{background-color:#202122}}.cdx-button:enabled:hover,.cdx-button.cdx-button--fake-button--enabled:hover{background-color:#fff;color:#404244;cursor:pointer}@supports ((-webkit-mask-image: none) or (mask-image: none)){.cdx-button:enabled:hover .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled:hover .cdx-button__icon{background-color:#404244}}.cdx-button:enabled:active,.cdx-button.cdx-button--fake-button--enabled:active,.cdx-button:enabled.cdx-button--is-active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--is-active{background-color:#eaecf0;color:#000;border-color:#72777d}@supports ((-webkit-mask-image: none) or (mask-image: none)){.cdx-button:enabled:active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled:active .cdx-button__icon,.cdx-button:enabled.cdx-button--is-active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--is-active .cdx-button__icon{background-color:#000}}.cdx-button:enabled:focus,.cdx-button.cdx-button--fake-button--enabled:focus{outline:1px solid transparent}.cdx-button:enabled:focus:not(:active):not(.cdx-button--is-active),.cdx-button.cdx-button--fake-button--enabled:focus:not(:active):not(.cdx-button--is-active){border-color:#36c;box-shadow:inset 0 0 0 1px #36c}.cdx-button:enabled.cdx-button--action-progressive,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-progressive{color:#36c}@supports ((-webkit-mask-image: none) or (mask-image: none)){.cdx-button:enabled.cdx-button--action-progressive .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-progressive .cdx-button__icon{background-color:#36c}}.cdx-button:enabled.cdx-button--action-progressive:hover,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-progressive:hover{color:#447ff5;border-color:#447ff5}@supports ((-webkit-mask-image: none) or (mask-image: none)){.cdx-button:enabled.cdx-button--action-progressive:hover .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-progressive:hover .cdx-button__icon{background-color:#447ff5}}.cdx-button:enabled.cdx-button--action-progressive:active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-progressive:active,.cdx-button:enabled.cdx-button--action-progressive.cdx-button--is-active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-progressive.cdx-button--is-active{background-color:#eaf3ff;color:#2a4b8d;border-color:#2a4b8d}@supports ((-webkit-mask-image: none) or (mask-image: none)){.cdx-button:enabled.cdx-button--action-progressive:active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-progressive:active .cdx-button__icon,.cdx-button:enabled.cdx-button--action-progressive.cdx-button--is-active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-progressive.cdx-button--is-active .cdx-button__icon{background-color:#2a4b8d}}.cdx-button:enabled.cdx-button--action-destructive,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-destructive{color:#d73333}@supports ((-webkit-mask-image: none) or (mask-image: none)){.cdx-button:enabled.cdx-button--action-destructive .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-destructive .cdx-button__icon{background-color:#d73333}}.cdx-button:enabled.cdx-button--action-destructive:hover,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-destructive:hover{color:#ff4242;border-color:#ff4242}@supports ((-webkit-mask-image: none) or (mask-image: none)){.cdx-button:enabled.cdx-button--action-destructive:hover .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-destructive:hover .cdx-button__icon{background-color:#ff4242}}.cdx-button:enabled.cdx-button--action-destructive:active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-destructive:active,.cdx-button:enabled.cdx-button--action-destructive.cdx-button--is-active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-destructive.cdx-button--is-active{background-color:#fee7e6;color:#b32424;border-color:#b32424}@supports ((-webkit-mask-image: none) or (mask-image: none)){.cdx-button:enabled.cdx-button--action-destructive:active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-destructive:active .cdx-button__icon,.cdx-button:enabled.cdx-button--action-destructive.cdx-button--is-active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-destructive.cdx-button--is-active .cdx-button__icon{background-color:#b32424}}.cdx-button:enabled.cdx-button--action-destructive:focus:not(:active):not(.cdx-button--is-active),.cdx-button.cdx-button--fake-button--enabled.cdx-button--action-destructive:focus:not(:active):not(.cdx-button--is-active){border-color:#d73333;box-shadow:inset 0 0 0 1px #d73333}.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-progressive,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-progressive{background-color:#36c;color:#fff;border-color:#36c}@supports ((-webkit-mask-image: none) or (mask-image: none)){.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-progressive .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-progressive .cdx-button__icon{background-color:#fff}}.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-progressive:hover,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-progressive:hover{background-color:#447ff5;border-color:#447ff5}@supports ((-webkit-mask-image: none) or (mask-image: none)){.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-progressive:hover .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-progressive:hover .cdx-button__icon{background-color:#fff}}.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-progressive:active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-progressive:active,.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-progressive.cdx-button--is-active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-progressive.cdx-button--is-active{background-color:#2a4b8d;border-color:#2a4b8d}@supports ((-webkit-mask-image: none) or (mask-image: none)){.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-progressive:active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-progressive:active .cdx-button__icon,.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-progressive.cdx-button--is-active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-progressive.cdx-button--is-active .cdx-button__icon{background-color:#fff}}.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-progressive:focus:not(:active):not(.cdx-button--is-active),.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-progressive:focus:not(:active):not(.cdx-button--is-active){border-color:#36c;box-shadow:inset 0 0 0 1px #36c,inset 0 0 0 2px #fff}.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-destructive,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-destructive{background-color:#d73333;color:#fff;border-color:#d73333}@supports ((-webkit-mask-image: none) or (mask-image: none)){.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-destructive .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-destructive .cdx-button__icon{background-color:#fff}}.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-destructive:hover,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-destructive:hover{background-color:#ff4242;border-color:#ff4242}@supports ((-webkit-mask-image: none) or (mask-image: none)){.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-destructive:hover .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-destructive:hover .cdx-button__icon{background-color:#fff}}.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-destructive:active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-destructive:active,.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-destructive.cdx-button--is-active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-destructive.cdx-button--is-active{background-color:#b32424;border-color:#b32424}@supports ((-webkit-mask-image: none) or (mask-image: none)){.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-destructive:active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-destructive:active .cdx-button__icon,.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-destructive.cdx-button--is-active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-destructive.cdx-button--is-active .cdx-button__icon{background-color:#fff}}.cdx-button:enabled.cdx-button--weight-primary.cdx-button--action-destructive:focus:not(:active):not(.cdx-button--is-active),.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-primary.cdx-button--action-destructive:focus:not(:active):not(.cdx-button--is-active){border-color:#d73333;box-shadow:inset 0 0 0 1px #d73333,inset 0 0 0 2px #fff}.cdx-button:enabled.cdx-button--weight-quiet,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet{background-color:rgba(255,255,255,0);border-color:transparent}.cdx-button:enabled.cdx-button--weight-quiet:hover,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet:hover{background-color:rgba(0,24,73,.027)}.cdx-button:enabled.cdx-button--weight-quiet:active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet:active,.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--is-active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--is-active{background-color:rgba(0,24,73,.082);color:#000;border-color:#72777d}@supports ((-webkit-mask-image: none) or (mask-image: none)){.cdx-button:enabled.cdx-button--weight-quiet:active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet:active .cdx-button__icon,.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--is-active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--is-active .cdx-button__icon{background-color:#000}}.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-progressive,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-progressive{color:#36c}@supports ((-webkit-mask-image: none) or (mask-image: none)){.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-progressive .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-progressive .cdx-button__icon{background-color:#36c}}.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-progressive:hover,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-progressive:hover{background-color:#eaf3ff;color:#447ff5}@supports ((-webkit-mask-image: none) or (mask-image: none)){.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-progressive:hover .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-progressive:hover .cdx-button__icon{background-color:#447ff5}}.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-progressive:active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-progressive:active,.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-progressive.cdx-button--is-active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-progressive.cdx-button--is-active{background-color:#2a4b8d;color:#fff;border-color:#2a4b8d}@supports ((-webkit-mask-image: none) or (mask-image: none)){.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-progressive:active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-progressive:active .cdx-button__icon,.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-progressive.cdx-button--is-active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-progressive.cdx-button--is-active .cdx-button__icon{background-color:#fff}}.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-destructive,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-destructive{color:#d73333}@supports ((-webkit-mask-image: none) or (mask-image: none)){.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-destructive .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-destructive .cdx-button__icon{background-color:#d73333}}.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-destructive:hover,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-destructive:hover{background-color:#fee7e6;color:#ff4242}@supports ((-webkit-mask-image: none) or (mask-image: none)){.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-destructive:hover .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-destructive:hover .cdx-button__icon{background-color:#ff4242}}.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-destructive:active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-destructive:active,.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-destructive.cdx-button--is-active,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-destructive.cdx-button--is-active{background-color:#b32424;color:#fff;border-color:#b32424}@supports ((-webkit-mask-image: none) or (mask-image: none)){.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-destructive:active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-destructive:active .cdx-button__icon,.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-destructive.cdx-button--is-active .cdx-button__icon,.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-destructive.cdx-button--is-active .cdx-button__icon{background-color:#fff}}.cdx-button:enabled.cdx-button--weight-quiet.cdx-button--action-destructive:focus:not(:active):not(.cdx-button--is-active),.cdx-button.cdx-button--fake-button--enabled.cdx-button--weight-quiet.cdx-button--action-destructive:focus:not(:active):not(.cdx-button--is-active){border-color:#d73333;box-shadow:inset 0 0 0 1px #d73333}.cdx-button:disabled,.cdx-button.cdx-button--fake-button--disabled{background-color:#c8ccd1;color:#fff;border-color:transparent}@supports ((-webkit-mask-image: none) or (mask-image: none)){.cdx-button:disabled .cdx-button__icon,.cdx-button.cdx-button--fake-button--disabled .cdx-button__icon{background-color:#fff}}.cdx-button:disabled.cdx-button--weight-quiet,.cdx-button.cdx-button--fake-button--disabled.cdx-button--weight-quiet{background-color:rgba(255,255,255,0);color:#72777d}@supports ((-webkit-mask-image: none) or (mask-image: none)){.cdx-button:disabled.cdx-button--weight-quiet .cdx-button__icon,.cdx-button.cdx-button--fake-button--disabled.cdx-button--weight-quiet .cdx-button__icon{background-color:#72777d}} diff --git a/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/CdxButton.js b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/CdxButton.js new file mode 100644 index 000000000000..fc2b49b93ff4 --- /dev/null +++ b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/CdxButton.js @@ -0,0 +1 @@ +"use strict";const e=require("vue"),o=require("./constants.js"),c=require("./useIconOnlyButton.js"),d=require("./_plugin-vue_export-helper.js");require("./useSlotContents.js");require("./useWarnOnce.js");const p=o.makeStringTypeValidator(o.ButtonActions),v=o.makeStringTypeValidator(o.ButtonWeights),y=o.makeStringTypeValidator(o.ButtonSizes),f=e.defineComponent({name:"CdxButton",props:{action:{type:String,default:"default",validator:p},weight:{type:String,default:"normal",validator:v},size:{type:String,default:"medium",validator:y}},emits:["click"],setup(t,{emit:n,slots:r,attrs:a}){const l=c.useIconOnlyButton(r.default,a,"CdxButton"),s=e.ref(!1);return{rootClasses:e.computed(()=>({["cdx-button--action-".concat(t.action)]:!0,["cdx-button--weight-".concat(t.weight)]:!0,["cdx-button--size-".concat(t.size)]:!0,"cdx-button--framed":t.weight!=="quiet","cdx-button--icon-only":l.value,"cdx-button--is-active":s.value})),onClick:u=>{n("click",u)},setActive:u=>{s.value=u}}}});function g(t,n,r,a,l,s){return e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(["cdx-button",t.rootClasses]),onClick:n[0]||(n[0]=(...i)=>t.onClick&&t.onClick(...i)),onKeydown:n[1]||(n[1]=e.withKeys(i=>t.setActive(!0),["space","enter"])),onKeyup:n[2]||(n[2]=e.withKeys(i=>t.setActive(!1),["space","enter"]))},[e.renderSlot(t.$slots,"default")],34)}const m=d._export_sfc(f,[["render",g]]);module.exports=m; diff --git a/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/CdxIcon.css b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/CdxIcon.css new file mode 100644 index 000000000000..f55ced873eb4 --- /dev/null +++ b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/CdxIcon.css @@ -0,0 +1 @@ +.cdx-icon{color:#202122;display:inline-flex;align-items:center;justify-content:center;vertical-align:text-bottom}.cdx-icon svg{fill:currentcolor;width:100%;height:100%}.cdx-icon--x-small{min-width:12px;min-height:12px;width:.75em;height:.75em}.cdx-icon--small{min-width:16px;min-height:16px;width:1em;height:1em}.cdx-icon--medium{min-width:20px;min-height:20px;width:1.25em;height:1.25em}.cdx-icon--flipped svg{transform:scaleX(-1)} diff --git a/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/CdxMessage.css b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/CdxMessage.css new file mode 100644 index 000000000000..4bae45e2bf91 --- /dev/null +++ b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/CdxMessage.css @@ -0,0 +1 @@ +.cdx-message{background-color:#eaecf0;color:#202122;display:flex;align-items:flex-start;position:relative;border:1px solid #54595d;padding:16px}@media screen and (min-width: 640px){.cdx-message{padding-right:24px;padding-left:24px}}.cdx-message .cdx-message__icon{background-position:center;background-repeat:no-repeat;background-size:max(1.25em,20px);min-width:20px;min-height:20px;width:1.25em;height:1.25em;display:inline-block;vertical-align:text-bottom;background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="20" height="20" viewBox="0 0 20 20" fill="%23202122"><path d="M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z"/></svg>')}.cdx-message .cdx-message__icon:lang(ar){background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="20" height="20" viewBox="0 0 20 20" fill="%23202122"><path d="M8 19a1 1 0 001 1h2a1 1 0 001-1v-1H8zm9-12a7 7 0 10-12 4.9S7 14 7 15v1a1 1 0 001 1h4a1 1 0 001-1v-1c0-1 2-3.1 2-3.1A7 7 0 0017 7z"/></svg>')}.cdx-message--warning{background-color:#fef6e7;border-color:#ac6600}.cdx-message--warning .cdx-message__icon{background-position:center;background-repeat:no-repeat;background-size:max(1.25em,20px);min-width:20px;min-height:20px;width:1.25em;height:1.25em;display:inline-block;vertical-align:text-bottom;background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="20" height="20" viewBox="0 0 20 20" fill="%23edab00"><path d="M11.53 2.3A1.85 1.85 0 0010 1.21 1.85 1.85 0 008.48 2.3L.36 16.36C-.48 17.81.21 19 1.88 19h16.24c1.67 0 2.36-1.19 1.52-2.64zM11 16H9v-2h2zm0-4H9V6h2z"/></svg>')}.cdx-message--warning .cdx-message__icon--vue{color:#edab00}.cdx-message--error{background-color:#fee7e6;border-color:#b32424}.cdx-message--error .cdx-message__icon{background-position:center;background-repeat:no-repeat;background-size:max(1.25em,20px);min-width:20px;min-height:20px;width:1.25em;height:1.25em;display:inline-block;vertical-align:text-bottom;background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="20" height="20" viewBox="0 0 20 20" fill="%23d73333"><path d="M13.728 1H6.272L1 6.272v7.456L6.272 19h7.456L19 13.728V6.272zM11 15H9v-2h2zm0-4H9V5h2z"/></svg>')}.cdx-message--error .cdx-message__icon--vue{color:#d73333}.cdx-message--success{background-color:#d5fdf4;border-color:#096450}.cdx-message--success .cdx-message__icon{background-position:center;background-repeat:no-repeat;background-size:max(1.25em,20px);min-width:20px;min-height:20px;width:1.25em;height:1.25em;display:inline-block;vertical-align:text-bottom;background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="20" height="20" viewBox="0 0 20 20" fill="%2314866d"><path d="M10 20a10 10 0 010-20 10 10 0 110 20Zm-2-5 9-8.5L15.5 5 8 12 4.5 8.5 3 10l5 5Z"/></svg>')}.cdx-message--success .cdx-message__icon--vue{color:#14866d}.cdx-message--user-dismissable{padding-right:48px}@media screen and (min-width: 640px){.cdx-message--user-dismissable{padding-right:56px}}.cdx-message--inline{background-color:rgba(255,255,255,0);border:0;padding:0;font-weight:700}.cdx-message--inline.cdx-message--error{color:#d73333}.cdx-message--inline.cdx-message--success{color:#14866d}.cdx-message .cdx-message__icon,.cdx-message .cdx-message__icon--vue{height:1.5em}.cdx-message__content{word-wrap:break-word;-webkit-hyphens:auto;-ms-hyphens:auto;hyphens:auto;align-self:center;flex-grow:1;margin-left:8px}.cdx-message__content,.cdx-message__content>*{line-height:1.6}.cdx-message__content>*:first-child{margin-top:0;padding-top:0}.cdx-message__content>*:last-child{margin-bottom:0;padding-bottom:0}.cdx-message__dismiss-button{position:absolute;top:12px;right:16px;padding:5px;line-height:0}@media screen and (min-width: 640px){.cdx-message__dismiss-button{right:8px}}.cdx-message+.cdx-message{margin-top:8px}.cdx-message-enter-active,.cdx-message-leave-active-system{transition-property:opacity;transition-duration:.25s;transition-timing-function:ease}.cdx-message-leave-active-user{transition-property:opacity;transition-duration:.25s;transition-timing-function:ease-out}.cdx-message-enter-from,.cdx-message-leave-to{opacity:0} diff --git a/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/CdxMessage.js b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/CdxMessage.js new file mode 100644 index 000000000000..91dad2e8d268 --- /dev/null +++ b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/CdxMessage.js @@ -0,0 +1 @@ +"use strict";const s=require("vue"),t=require("./Icon.js"),m=require("./CdxButton.js"),f=require("./constants.js"),v=require("./_plugin-vue_export-helper.js");require("./useIconOnlyButton.js");require("./useSlotContents.js");require("./useWarnOnce.js");const p={notice:t.K3,error:t.e3,warning:t.m5,success:t.D7},y=s.defineComponent({name:"CdxMessage",components:{CdxButton:m,CdxIcon:t.CdxIcon},props:{type:{type:String,default:"notice",validator:f.statusTypeValidator},inline:{type:Boolean,default:!1},icon:{type:[String,Object],default:null},fadeIn:{type:Boolean,default:!1},dismissButtonLabel:{type:String,default:""},autoDismiss:{type:[Boolean,Number],default:!1,validator:e=>typeof e=="boolean"||typeof e=="number"&&e>0}},emits:["user-dismissed","auto-dismissed"],setup(e,{emit:o}){const n=s.ref(!1),l=s.computed(()=>e.inline===!1&&e.dismissButtonLabel.length>0),c=s.computed(()=>e.autoDismiss===!1||e.type==="error"?!1:e.autoDismiss===!0?4e3:e.autoDismiss),u=s.computed(()=>({"cdx-message--inline":e.inline,"cdx-message--block":!e.inline,"cdx-message--user-dismissable":l.value,["cdx-message--".concat(e.type)]:!0})),i=s.computed(()=>e.icon&&e.type==="notice"?e.icon:p[e.type]),a=s.ref("");function r(d){n.value||(a.value=d==="user-dismissed"?"cdx-message-leave-active-user":"cdx-message-leave-active-system",n.value=!0,o(d))}return s.onMounted(()=>{e.type==="error"&&e.autoDismiss!==!1?s.warn('CdxMessage: Message with type="error" cannot use auto-dismiss'):c.value&&setTimeout(()=>r("auto-dismissed"),c.value)}),{dismissed:n,userDismissable:l,rootClasses:u,leaveActiveClass:a,computedIcon:i,onDismiss:r,cdxIconClose:t.Q5}}});const g=["aria-live","role"],C={class:"cdx-message__content"};function b(e,o,n,l,c,u){const i=s.resolveComponent("cdx-icon"),a=s.resolveComponent("cdx-button");return s.openBlock(),s.createBlock(s.Transition,{name:"cdx-message",appear:e.fadeIn,"leave-active-class":e.leaveActiveClass},{default:s.withCtx(()=>[e.dismissed?s.createCommentVNode("",!0):(s.openBlock(),s.createElementBlock("div",{key:0,class:s.normalizeClass(["cdx-message",e.rootClasses]),"aria-live":e.type!=="error"?"polite":void 0,role:e.type==="error"?"alert":void 0},[s.createVNode(i,{class:"cdx-message__icon--vue",icon:e.computedIcon},null,8,["icon"]),s.createElementVNode("div",C,[s.renderSlot(e.$slots,"default")]),e.userDismissable?(s.openBlock(),s.createBlock(a,{key:0,class:"cdx-message__dismiss-button",weight:"quiet",type:"button","aria-label":e.dismissButtonLabel,onClick:o[0]||(o[0]=r=>e.onDismiss("user-dismissed"))},{default:s.withCtx(()=>[s.createVNode(i,{icon:e.cdxIconClose,"icon-label":e.dismissButtonLabel},null,8,["icon","icon-label"])]),_:1},8,["aria-label"])):s.createCommentVNode("",!0)],10,g))]),_:3},8,["appear","leave-active-class"])}const _=v._export_sfc(y,[["render",b]]);module.exports=_; diff --git a/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/Icon.js b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/Icon.js new file mode 100644 index 000000000000..32e59aaac283 --- /dev/null +++ b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/Icon.js @@ -0,0 +1 @@ +"use strict";const t=require("vue"),d=require("./constants.js"),h=require("./_plugin-vue_export-helper.js"),m='<path d="M11.53 2.3A1.85 1.85 0 0010 1.21 1.85 1.85 0 008.48 2.3L.36 16.36C-.48 17.81.21 19 1.88 19h16.24c1.67 0 2.36-1.19 1.52-2.64zM11 16H9v-2h2zm0-4H9V6h2z"/>',v='<path d="M12.43 14.34A5 5 0 0110 15a5 5 0 113.95-2L17 16.09V3a2 2 0 00-2-2H5a2 2 0 00-2 2v14a2 2 0 002 2h10a2 2 0 001.45-.63z"/><circle cx="10" cy="10" r="3"/>',g='<path d="M10 0a10 10 0 1010 10A10 10 0 0010 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z"/>',f='<path d="m4.34 2.93 12.73 12.73-1.41 1.41L2.93 4.35z"/><path d="M17.07 4.34 4.34 17.07l-1.41-1.41L15.66 2.93z"/>',z='<path d="M13.728 1H6.272L1 6.272v7.456L6.272 19h7.456L19 13.728V6.272zM11 15H9v-2h2zm0-4H9V5h2z"/>',M='<path d="m17.5 4.75-7.5 7.5-7.5-7.5L1 6.25l9 9 9-9z"/>',L='<path d="M19 3H1v14h18zM3 14l3.5-4.5 2.5 3L12.5 8l4.5 6z"/><path d="M19 5H1V3h18zm0 12H1v-2h18z"/>',y='<path d="M8 19a1 1 0 001 1h2a1 1 0 001-1v-1H8zm9-12a7 7 0 10-12 4.9S7 14 7 15v1a1 1 0 001 1h4a1 1 0 001-1v-1c0-1 2-3.1 2-3.1A7 7 0 0017 7z"/>',C='<path d="M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z"/>',k='<path d="M7 1 5.6 2.5 13 10l-7.4 7.5L7 19l9-9z"/>',_='<path d="m4 10 9 9 1.4-1.5L7 10l7.4-7.5L13 1z"/>',H='<path d="M12.2 13.6a7 7 0 111.4-1.4l5.4 5.4-1.4 1.4zM3 8a5 5 0 1010 0A5 5 0 003 8z"/>',S='<path d="M10 20a10 10 0 010-20 10 10 0 110 20Zm-2-5 9-8.5L15.5 5 8 12 4.5 8.5 3 10l5 5Z"/>',w=m,x=v,B=g,E=f,V=z,D=M,F=L,A={langCodeMap:{ar:y},default:C},I={ltr:k,shouldFlip:!0},$={ltr:_,shouldFlip:!0},b=H,K=S;function q(e,o,n){if(typeof e=="string"||"path"in e)return e;if("shouldFlip"in e)return e.ltr;if("rtl"in e)return n==="rtl"?e.rtl:e.ltr;const l=o in e.langCodeMap?e.langCodeMap[o]:e.default;return typeof l=="string"||"path"in l?l:l.ltr}function T(e,o){if(typeof e=="string")return!1;if("langCodeMap"in e){const n=o in e.langCodeMap?e.langCodeMap[o]:e.default;if(typeof n=="string")return!1;e=n}if("shouldFlipExceptions"in e&&Array.isArray(e.shouldFlipExceptions)){const n=e.shouldFlipExceptions.indexOf(o);return n===void 0||n===-1}return"shouldFlip"in e?e.shouldFlip:!1}function u(e){const o=t.ref(null);return t.onMounted(()=>{const n=window.getComputedStyle(e.value).direction;o.value=n==="ltr"||n==="rtl"?n:null}),o}function Z(e){const o=t.ref("");return t.onMounted(()=>{let n=e.value;for(;n&&n.lang==="";)n=n.parentElement;o.value=n?n.lang:null}),o}const J=d.makeStringTypeValidator(d.IconSizes),O=t.defineComponent({name:"CdxIcon",props:{icon:{type:[String,Object],required:!0},iconLabel:{type:String,default:""},lang:{type:String,default:null},dir:{type:String,default:null},size:{type:String,default:"medium",validator:J}},setup(e){const o=t.ref(),n=u(o),l=Z(o),r=t.computed(()=>e.dir||n.value),i=t.computed(()=>e.lang||l.value),s=t.computed(()=>({"cdx-icon--flipped":r.value==="rtl"&&i.value!==null&&T(e.icon,i.value),["cdx-icon--".concat(e.size)]:!0})),a=t.computed(()=>q(e.icon,i.value||"",r.value||"ltr")),c=t.computed(()=>typeof a.value=="string"?a.value:""),p=t.computed(()=>typeof a.value!="string"?a.value.path:"");return{rootElement:o,rootClasses:s,iconSvg:c,iconPath:p}}});const P=["aria-hidden"],Q={key:0},j=["innerHTML"],N=["d"];function R(e,o,n,l,r,i){return t.openBlock(),t.createElementBlock("span",{ref:"rootElement",class:t.normalizeClass(["cdx-icon",e.rootClasses])},[(t.openBlock(),t.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",width:"20",height:"20",viewBox:"0 0 20 20","aria-hidden":e.iconLabel?void 0:!0},[e.iconLabel?(t.openBlock(),t.createElementBlock("title",Q,t.toDisplayString(e.iconLabel),1)):t.createCommentVNode("",!0),e.iconSvg?(t.openBlock(),t.createElementBlock("g",{key:1,innerHTML:e.iconSvg},null,8,j)):(t.openBlock(),t.createElementBlock("path",{key:2,d:e.iconPath},null,8,N))],8,P))],2)}const U=h._export_sfc(O,[["render",R]]);exports.CdxIcon=U;exports.D3=F;exports.D7=K;exports.J6=I;exports.K3=A;exports.K5=B;exports.Q5=E;exports.V7=b;exports.e3=V;exports.k5=x;exports.m5=w;exports.s7=$;exports.useComputedDirection=u;exports.z3=D; diff --git a/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/_plugin-vue_export-helper.js b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/_plugin-vue_export-helper.js new file mode 100644 index 000000000000..dc82924e17cc --- /dev/null +++ b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/_plugin-vue_export-helper.js @@ -0,0 +1 @@ +"use strict";const e=(t,o)=>{const c=t.__vccOpts||t;for(const[r,s]of o)c[r]=s;return c};exports._export_sfc=e; diff --git a/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/constants.js b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/constants.js new file mode 100644 index 000000000000..c9ee9b19096d --- /dev/null +++ b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/constants.js @@ -0,0 +1 @@ +"use strict";function t(n){return e=>typeof e=="string"&&n.indexOf(e)!==-1}const s="cdx",o=["default","progressive","destructive"],i=["normal","primary","quiet"],a=["medium","large"],l=["x-small","small","medium"],r=["notice","warning","error","success"],d=t(r),c=["text","search","number","email","month","password","tel","url","week","date","datetime-local","time"],u=["default","error"],y=120,m=500,p="cdx-menu-footer-item",b=Symbol("CdxTabs"),S=Symbol("CdxActiveTab"),I=Symbol("CdxFieldInputId"),T=Symbol("CdxFieldDescriptionId"),x=Symbol("CdxFieldStatus"),K=Symbol("CdxDisabled"),F="".concat(s,"-no-invert");exports.ActiveTabKey=S;exports.ButtonActions=o;exports.ButtonSizes=a;exports.ButtonWeights=i;exports.DebounceInterval=y;exports.DisabledKey=K;exports.FieldDescriptionIdKey=T;exports.FieldInputIdKey=I;exports.FieldStatusKey=x;exports.IconSizes=l;exports.LibraryPrefix=s;exports.MenuFooterValue=p;exports.NoInvertClass=F;exports.PendingDelay=m;exports.TabsKey=b;exports.TextInputTypes=c;exports.ValidationStatusTypes=u;exports.makeStringTypeValidator=t;exports.statusTypeValidator=d; diff --git a/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/manifest.json b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/manifest.json new file mode 100644 index 000000000000..7a0a605413e7 --- /dev/null +++ b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/manifest.json @@ -0,0 +1,838 @@ +{ + "Icon.css": { + "file": "CdxIcon.css", + "src": "Icon.css" + }, + "_Icon.js": { + "css": [ + "CdxIcon.css" + ], + "file": "Icon.js", + "imports": [ + "src/composables/useComputedDirection.ts", + "src/composables/useComputedLanguage.ts", + "_constants.js", + "__plugin-vue_export-helper.js" + ] + }, + "__plugin-vue_export-helper.js": { + "file": "_plugin-vue_export-helper.js" + }, + "_buttonHelpers.js": { + "file": "buttonHelpers.js" + }, + "_constants.js": { + "file": "constants.js" + }, + "_useIconOnlyButton.js": { + "file": "useIconOnlyButton.js", + "imports": [ + "_useSlotContents2.js", + "src/composables/useWarnOnce.ts" + ] + }, + "_useLabelChecker.js": { + "file": "useLabelChecker.js", + "imports": [ + "_useSlotContents2.js", + "src/composables/useWarnOnce.ts" + ] + }, + "_useSlotContents2.js": { + "file": "useSlotContents2.js" + }, + "src/components/accordion/Accordion.css": { + "file": "CdxAccordion.css", + "src": "src/components/accordion/Accordion.css" + }, + "src/components/accordion/Accordion.vue": { + "css": [ + "CdxAccordion.css" + ], + "file": "CdxAccordion.js", + "imports": [ + "_Icon.js", + "src/components/button/Button.vue", + "src/composables/useGeneratedId.ts", + "__plugin-vue_export-helper.js", + "src/composables/useComputedDirection.ts", + "src/composables/useComputedLanguage.ts", + "_constants.js", + "_useIconOnlyButton.js", + "_useSlotContents2.js", + "src/composables/useWarnOnce.ts" + ], + "isEntry": true, + "src": "src/components/accordion/Accordion.vue" + }, + "src/components/button-group/ButtonGroup.css": { + "file": "CdxButtonGroup.css", + "src": "src/components/button-group/ButtonGroup.css" + }, + "src/components/button-group/ButtonGroup.vue": { + "css": [ + "CdxButtonGroup.css" + ], + "file": "CdxButtonGroup.js", + "imports": [ + "_buttonHelpers.js", + "src/components/button/Button.vue", + "_Icon.js", + "__plugin-vue_export-helper.js", + "_constants.js", + "_useIconOnlyButton.js", + "_useSlotContents2.js", + "src/composables/useWarnOnce.ts", + "src/composables/useComputedDirection.ts", + "src/composables/useComputedLanguage.ts" + ], + "isEntry": true, + "src": "src/components/button-group/ButtonGroup.vue" + }, + "src/components/button/Button.css": { + "file": "CdxButton.css", + "src": "src/components/button/Button.css" + }, + "src/components/button/Button.vue": { + "css": [ + "CdxButton.css" + ], + "file": "CdxButton.js", + "imports": [ + "_constants.js", + "_useIconOnlyButton.js", + "__plugin-vue_export-helper.js", + "_useSlotContents2.js", + "src/composables/useWarnOnce.ts" + ], + "isEntry": true, + "src": "src/components/button/Button.vue" + }, + "src/components/card/Card.css": { + "file": "CdxCard.css", + "src": "src/components/card/Card.css" + }, + "src/components/card/Card.vue": { + "css": [ + "CdxCard.css" + ], + "file": "CdxCard.js", + "imports": [ + "_Icon.js", + "src/components/thumbnail/Thumbnail.vue", + "__plugin-vue_export-helper.js", + "src/composables/useComputedDirection.ts", + "src/composables/useComputedLanguage.ts", + "_constants.js" + ], + "isEntry": true, + "src": "src/components/card/Card.vue" + }, + "src/components/checkbox/Checkbox.css": { + "file": "CdxCheckbox.css", + "src": "src/components/checkbox/Checkbox.css" + }, + "src/components/checkbox/Checkbox.vue": { + "css": [ + "CdxCheckbox.css" + ], + "file": "CdxCheckbox.js", + "imports": [ + "src/components/label/Label.vue", + "_useLabelChecker.js", + "src/composables/useModelWrapper.ts", + "src/composables/useGeneratedId.ts", + "src/composables/useFieldData.ts", + "_constants.js", + "__plugin-vue_export-helper.js", + "_Icon.js", + "src/composables/useComputedDirection.ts", + "src/composables/useComputedLanguage.ts", + "src/composables/useSplitAttributes.ts", + "_useSlotContents2.js", + "src/composables/useWarnOnce.ts", + "src/composables/useComputedDisabled.ts" + ], + "isEntry": true, + "src": "src/components/checkbox/Checkbox.vue" + }, + "src/components/chip-input/ChipInput.css": { + "file": "CdxChipInput.css", + "src": "src/components/chip-input/ChipInput.css" + }, + "src/components/chip-input/ChipInput.vue": { + "css": [ + "CdxChipInput.css" + ], + "file": "CdxChipInput.js", + "imports": [ + "src/components/button/Button.vue", + "_Icon.js", + "__plugin-vue_export-helper.js", + "_constants.js", + "src/composables/useSplitAttributes.ts", + "src/composables/useFieldData.ts", + "src/composables/useComputedDirection.ts", + "_useIconOnlyButton.js", + "_useSlotContents2.js", + "src/composables/useWarnOnce.ts", + "src/composables/useComputedLanguage.ts", + "src/composables/useComputedDisabled.ts" + ], + "isEntry": true, + "src": "src/components/chip-input/ChipInput.vue" + }, + "src/components/combobox/Combobox.css": { + "file": "CdxCombobox.css", + "src": "src/components/combobox/Combobox.css" + }, + "src/components/combobox/Combobox.vue": { + "css": [ + "CdxCombobox.css" + ], + "file": "CdxCombobox.js", + "imports": [ + "_Icon.js", + "src/components/button/Button.vue", + "src/components/menu/Menu.vue", + "src/components/text-input/TextInput.vue", + "src/composables/useModelWrapper.ts", + "src/composables/useGeneratedId.ts", + "src/composables/useSplitAttributes.ts", + "src/composables/useFieldData.ts", + "src/composables/useFloatingMenu.ts", + "_constants.js", + "__plugin-vue_export-helper.js", + "src/composables/useComputedDirection.ts", + "src/composables/useComputedLanguage.ts", + "_useIconOnlyButton.js", + "_useSlotContents2.js", + "src/composables/useWarnOnce.ts", + "src/components/menu-item/MenuItem.vue", + "src/components/thumbnail/Thumbnail.vue", + "src/components/search-result-title/SearchResultTitle.vue", + "src/components/progress-bar/ProgressBar.vue", + "src/composables/useIntersectionObserver.ts", + "src/composables/useComputedDisabled.ts" + ], + "isEntry": true, + "src": "src/components/combobox/Combobox.vue" + }, + "src/components/dialog/Dialog.css": { + "file": "CdxDialog.css", + "src": "src/components/dialog/Dialog.css" + }, + "src/components/dialog/Dialog.vue": { + "css": [ + "CdxDialog.css" + ], + "file": "CdxDialog.js", + "imports": [ + "src/components/button/Button.vue", + "_Icon.js", + "src/composables/useGeneratedId.ts", + "src/composables/useResizeObserver.ts", + "__plugin-vue_export-helper.js", + "_constants.js", + "_useIconOnlyButton.js", + "_useSlotContents2.js", + "src/composables/useWarnOnce.ts", + "src/composables/useComputedDirection.ts", + "src/composables/useComputedLanguage.ts" + ], + "isEntry": true, + "src": "src/components/dialog/Dialog.vue" + }, + "src/components/field/Field.css": { + "file": "CdxField.css", + "src": "src/components/field/Field.css" + }, + "src/components/field/Field.vue": { + "css": [ + "CdxField.css" + ], + "file": "CdxField.js", + "imports": [ + "src/components/label/Label.vue", + "src/components/message/Message.vue", + "_constants.js", + "src/composables/useGeneratedId.ts", + "src/composables/useComputedDisabled.ts", + "__plugin-vue_export-helper.js", + "_Icon.js", + "src/composables/useComputedDirection.ts", + "src/composables/useComputedLanguage.ts", + "src/composables/useFieldData.ts", + "src/composables/useSplitAttributes.ts", + "src/components/button/Button.vue", + "_useIconOnlyButton.js", + "_useSlotContents2.js", + "src/composables/useWarnOnce.ts" + ], + "isEntry": true, + "src": "src/components/field/Field.vue" + }, + "src/components/icon/Icon.vue": { + "file": "CdxIcon.js", + "imports": [ + "_Icon.js", + "__plugin-vue_export-helper.js", + "src/composables/useComputedDirection.ts", + "src/composables/useComputedLanguage.ts", + "_constants.js" + ], + "isEntry": true, + "src": "src/components/icon/Icon.vue" + }, + "src/components/info-chip/InfoChip.css": { + "file": "CdxInfoChip.css", + "src": "src/components/info-chip/InfoChip.css" + }, + "src/components/info-chip/InfoChip.vue": { + "css": [ + "CdxInfoChip.css" + ], + "file": "CdxInfoChip.js", + "imports": [ + "_constants.js", + "_Icon.js", + "__plugin-vue_export-helper.js", + "src/composables/useComputedDirection.ts", + "src/composables/useComputedLanguage.ts" + ], + "isEntry": true, + "src": "src/components/info-chip/InfoChip.vue" + }, + "src/components/label/Label.css": { + "file": "CdxLabel.css", + "src": "src/components/label/Label.css" + }, + "src/components/label/Label.vue": { + "css": [ + "CdxLabel.css" + ], + "file": "CdxLabel.js", + "imports": [ + "_Icon.js", + "src/composables/useFieldData.ts", + "src/composables/useSplitAttributes.ts", + "__plugin-vue_export-helper.js", + "src/composables/useComputedDirection.ts", + "src/composables/useComputedLanguage.ts", + "_constants.js", + "src/composables/useComputedDisabled.ts" + ], + "isEntry": true, + "src": "src/components/label/Label.vue" + }, + "src/components/lookup/Lookup.css": { + "file": "CdxLookup.css", + "src": "src/components/lookup/Lookup.css" + }, + "src/components/lookup/Lookup.vue": { + "css": [ + "CdxLookup.css" + ], + "file": "CdxLookup.js", + "imports": [ + "src/components/menu/Menu.vue", + "src/components/text-input/TextInput.vue", + "src/composables/useGeneratedId.ts", + "src/composables/useModelWrapper.ts", + "src/composables/useSplitAttributes.ts", + "src/composables/useFieldData.ts", + "src/composables/useFloatingMenu.ts", + "_constants.js", + "__plugin-vue_export-helper.js", + "src/components/menu-item/MenuItem.vue", + "_Icon.js", + "src/composables/useComputedDirection.ts", + "src/composables/useComputedLanguage.ts", + "src/components/thumbnail/Thumbnail.vue", + "src/components/search-result-title/SearchResultTitle.vue", + "src/components/progress-bar/ProgressBar.vue", + "src/composables/useWarnOnce.ts", + "src/composables/useIntersectionObserver.ts", + "src/composables/useComputedDisabled.ts" + ], + "isEntry": true, + "src": "src/components/lookup/Lookup.vue" + }, + "src/components/menu-item/MenuItem.css": { + "file": "CdxMenuItem.css", + "src": "src/components/menu-item/MenuItem.css" + }, + "src/components/menu-item/MenuItem.vue": { + "css": [ + "CdxMenuItem.css" + ], + "file": "CdxMenuItem.js", + "imports": [ + "_Icon.js", + "src/components/thumbnail/Thumbnail.vue", + "src/components/search-result-title/SearchResultTitle.vue", + "__plugin-vue_export-helper.js", + "src/composables/useComputedDirection.ts", + "src/composables/useComputedLanguage.ts", + "_constants.js" + ], + "isEntry": true, + "src": "src/components/menu-item/MenuItem.vue" + }, + "src/components/menu/Menu.css": { + "file": "CdxMenu.css", + "src": "src/components/menu/Menu.css" + }, + "src/components/menu/Menu.vue": { + "css": [ + "CdxMenu.css" + ], + "file": "CdxMenu.js", + "imports": [ + "src/components/menu-item/MenuItem.vue", + "src/components/progress-bar/ProgressBar.vue", + "src/composables/useGeneratedId.ts", + "src/composables/useIntersectionObserver.ts", + "src/composables/useSplitAttributes.ts", + "__plugin-vue_export-helper.js", + "_Icon.js", + "src/composables/useComputedDirection.ts", + "src/composables/useComputedLanguage.ts", + "_constants.js", + "src/components/thumbnail/Thumbnail.vue", + "src/components/search-result-title/SearchResultTitle.vue", + "src/composables/useWarnOnce.ts" + ], + "isEntry": true, + "src": "src/components/menu/Menu.vue" + }, + "src/components/message/Message.css": { + "file": "CdxMessage.css", + "src": "src/components/message/Message.css" + }, + "src/components/message/Message.vue": { + "css": [ + "CdxMessage.css" + ], + "file": "CdxMessage.js", + "imports": [ + "_Icon.js", + "src/components/button/Button.vue", + "_constants.js", + "__plugin-vue_export-helper.js", + "src/composables/useComputedDirection.ts", + "src/composables/useComputedLanguage.ts", + "_useIconOnlyButton.js", + "_useSlotContents2.js", + "src/composables/useWarnOnce.ts" + ], + "isEntry": true, + "src": "src/components/message/Message.vue" + }, + "src/components/progress-bar/ProgressBar.css": { + "file": "CdxProgressBar.css", + "src": "src/components/progress-bar/ProgressBar.css" + }, + "src/components/progress-bar/ProgressBar.vue": { + "css": [ + "CdxProgressBar.css" + ], + "file": "CdxProgressBar.js", + "imports": [ + "src/composables/useWarnOnce.ts", + "__plugin-vue_export-helper.js" + ], + "isEntry": true, + "src": "src/components/progress-bar/ProgressBar.vue" + }, + "src/components/radio/Radio.css": { + "file": "CdxRadio.css", + "src": "src/components/radio/Radio.css" + }, + "src/components/radio/Radio.vue": { + "css": [ + "CdxRadio.css" + ], + "file": "CdxRadio.js", + "imports": [ + "src/components/label/Label.vue", + "_useLabelChecker.js", + "src/composables/useModelWrapper.ts", + "src/composables/useGeneratedId.ts", + "src/composables/useFieldData.ts", + "__plugin-vue_export-helper.js", + "_Icon.js", + "src/composables/useComputedDirection.ts", + "src/composables/useComputedLanguage.ts", + "_constants.js", + "src/composables/useSplitAttributes.ts", + "_useSlotContents2.js", + "src/composables/useWarnOnce.ts", + "src/composables/useComputedDisabled.ts" + ], + "isEntry": true, + "src": "src/components/radio/Radio.vue" + }, + "src/components/search-input/SearchInput.css": { + "file": "CdxSearchInput.css", + "src": "src/components/search-input/SearchInput.css" + }, + "src/components/search-input/SearchInput.vue": { + "css": [ + "CdxSearchInput.css" + ], + "file": "CdxSearchInput.js", + "imports": [ + "_Icon.js", + "src/components/button/Button.vue", + "src/components/text-input/TextInput.vue", + "src/composables/useModelWrapper.ts", + "src/composables/useSplitAttributes.ts", + "src/composables/useFieldData.ts", + "_constants.js", + "__plugin-vue_export-helper.js", + "src/composables/useComputedDirection.ts", + "src/composables/useComputedLanguage.ts", + "_useIconOnlyButton.js", + "_useSlotContents2.js", + "src/composables/useWarnOnce.ts", + "src/composables/useComputedDisabled.ts" + ], + "isEntry": true, + "src": "src/components/search-input/SearchInput.vue" + }, + "src/components/search-result-title/SearchResultTitle.css": { + "file": "CdxSearchResultTitle.css", + "src": "src/components/search-result-title/SearchResultTitle.css" + }, + "src/components/search-result-title/SearchResultTitle.vue": { + "css": [ + "CdxSearchResultTitle.css" + ], + "file": "CdxSearchResultTitle.js", + "imports": [ + "__plugin-vue_export-helper.js" + ], + "isEntry": true, + "src": "src/components/search-result-title/SearchResultTitle.vue" + }, + "src/components/select/Select.css": { + "file": "CdxSelect.css", + "src": "src/components/select/Select.css" + }, + "src/components/select/Select.vue": { + "css": [ + "CdxSelect.css" + ], + "file": "CdxSelect.js", + "imports": [ + "_Icon.js", + "src/components/menu/Menu.vue", + "src/composables/useGeneratedId.ts", + "src/composables/useModelWrapper.ts", + "src/composables/useFieldData.ts", + "src/composables/useSplitAttributes.ts", + "src/composables/useFloatingMenu.ts", + "_constants.js", + "__plugin-vue_export-helper.js", + "src/composables/useComputedDirection.ts", + "src/composables/useComputedLanguage.ts", + "src/components/menu-item/MenuItem.vue", + "src/components/thumbnail/Thumbnail.vue", + "src/components/search-result-title/SearchResultTitle.vue", + "src/components/progress-bar/ProgressBar.vue", + "src/composables/useWarnOnce.ts", + "src/composables/useIntersectionObserver.ts", + "src/composables/useComputedDisabled.ts" + ], + "isEntry": true, + "src": "src/components/select/Select.vue" + }, + "src/components/tab/Tab.css": { + "file": "CdxTab.css", + "src": "src/components/tab/Tab.css" + }, + "src/components/tab/Tab.vue": { + "css": [ + "CdxTab.css" + ], + "file": "CdxTab.js", + "imports": [ + "_constants.js", + "__plugin-vue_export-helper.js" + ], + "isEntry": true, + "src": "src/components/tab/Tab.vue" + }, + "src/components/tabs/Tabs.css": { + "file": "CdxTabs.css", + "src": "src/components/tabs/Tabs.css" + }, + "src/components/tabs/Tabs.vue": { + "css": [ + "CdxTabs.css" + ], + "file": "CdxTabs.js", + "imports": [ + "_Icon.js", + "src/components/button/Button.vue", + "src/components/tab/Tab.vue", + "src/composables/useGeneratedId.ts", + "src/composables/useComputedDirection.ts", + "src/composables/useModelWrapper.ts", + "src/composables/useIntersectionObserver.ts", + "_useSlotContents2.js", + "_constants.js", + "__plugin-vue_export-helper.js", + "src/composables/useComputedLanguage.ts", + "_useIconOnlyButton.js", + "src/composables/useWarnOnce.ts" + ], + "isEntry": true, + "src": "src/components/tabs/Tabs.vue" + }, + "src/components/text-area/TextArea.css": { + "file": "CdxTextArea.css", + "src": "src/components/text-area/TextArea.css" + }, + "src/components/text-area/TextArea.vue": { + "css": [ + "CdxTextArea.css" + ], + "file": "CdxTextArea.js", + "imports": [ + "_Icon.js", + "src/composables/useSplitAttributes.ts", + "src/composables/useModelWrapper.ts", + "src/composables/useFieldData.ts", + "_constants.js", + "__plugin-vue_export-helper.js", + "src/composables/useComputedDirection.ts", + "src/composables/useComputedLanguage.ts", + "src/composables/useComputedDisabled.ts" + ], + "isEntry": true, + "src": "src/components/text-area/TextArea.vue" + }, + "src/components/text-input/TextInput.css": { + "file": "CdxTextInput.css", + "src": "src/components/text-input/TextInput.css" + }, + "src/components/text-input/TextInput.vue": { + "css": [ + "CdxTextInput.css" + ], + "file": "CdxTextInput.js", + "imports": [ + "_Icon.js", + "_constants.js", + "src/composables/useModelWrapper.ts", + "src/composables/useSplitAttributes.ts", + "src/composables/useFieldData.ts", + "__plugin-vue_export-helper.js", + "src/composables/useComputedDirection.ts", + "src/composables/useComputedLanguage.ts", + "src/composables/useComputedDisabled.ts" + ], + "isEntry": true, + "src": "src/components/text-input/TextInput.vue" + }, + "src/components/thumbnail/Thumbnail.css": { + "file": "CdxThumbnail.css", + "src": "src/components/thumbnail/Thumbnail.css" + }, + "src/components/thumbnail/Thumbnail.vue": { + "css": [ + "CdxThumbnail.css" + ], + "file": "CdxThumbnail.js", + "imports": [ + "_Icon.js", + "_constants.js", + "__plugin-vue_export-helper.js", + "src/composables/useComputedDirection.ts", + "src/composables/useComputedLanguage.ts" + ], + "isEntry": true, + "src": "src/components/thumbnail/Thumbnail.vue" + }, + "src/components/toggle-button-group/ToggleButtonGroup.css": { + "file": "CdxToggleButtonGroup.css", + "src": "src/components/toggle-button-group/ToggleButtonGroup.css" + }, + "src/components/toggle-button-group/ToggleButtonGroup.vue": { + "css": [ + "CdxToggleButtonGroup.css" + ], + "file": "CdxToggleButtonGroup.js", + "imports": [ + "_buttonHelpers.js", + "_Icon.js", + "src/components/toggle-button/ToggleButton.vue", + "__plugin-vue_export-helper.js", + "src/composables/useComputedDirection.ts", + "src/composables/useComputedLanguage.ts", + "_constants.js", + "_useIconOnlyButton.js", + "_useSlotContents2.js", + "src/composables/useWarnOnce.ts" + ], + "isEntry": true, + "src": "src/components/toggle-button-group/ToggleButtonGroup.vue" + }, + "src/components/toggle-button/ToggleButton.css": { + "file": "CdxToggleButton.css", + "src": "src/components/toggle-button/ToggleButton.css" + }, + "src/components/toggle-button/ToggleButton.vue": { + "css": [ + "CdxToggleButton.css" + ], + "file": "CdxToggleButton.js", + "imports": [ + "_useIconOnlyButton.js", + "__plugin-vue_export-helper.js", + "_useSlotContents2.js", + "src/composables/useWarnOnce.ts" + ], + "isEntry": true, + "src": "src/components/toggle-button/ToggleButton.vue" + }, + "src/components/toggle-switch/ToggleSwitch.css": { + "file": "CdxToggleSwitch.css", + "src": "src/components/toggle-switch/ToggleSwitch.css" + }, + "src/components/toggle-switch/ToggleSwitch.vue": { + "css": [ + "CdxToggleSwitch.css" + ], + "file": "CdxToggleSwitch.js", + "imports": [ + "src/components/label/Label.vue", + "_useLabelChecker.js", + "src/composables/useModelWrapper.ts", + "src/composables/useGeneratedId.ts", + "src/composables/useSplitAttributes.ts", + "src/composables/useFieldData.ts", + "__plugin-vue_export-helper.js", + "_Icon.js", + "src/composables/useComputedDirection.ts", + "src/composables/useComputedLanguage.ts", + "_constants.js", + "_useSlotContents2.js", + "src/composables/useWarnOnce.ts", + "src/composables/useComputedDisabled.ts" + ], + "isEntry": true, + "src": "src/components/toggle-switch/ToggleSwitch.vue" + }, + "src/components/typeahead-search/TypeaheadSearch.css": { + "file": "CdxTypeaheadSearch.css", + "src": "src/components/typeahead-search/TypeaheadSearch.css" + }, + "src/components/typeahead-search/TypeaheadSearch.vue": { + "css": [ + "CdxTypeaheadSearch.css" + ], + "file": "CdxTypeaheadSearch.js", + "imports": [ + "_Icon.js", + "src/components/menu/Menu.vue", + "src/components/search-input/SearchInput.vue", + "src/composables/useGeneratedId.ts", + "src/composables/useSplitAttributes.ts", + "_constants.js", + "__plugin-vue_export-helper.js", + "src/composables/useComputedDirection.ts", + "src/composables/useComputedLanguage.ts", + "src/components/menu-item/MenuItem.vue", + "src/components/thumbnail/Thumbnail.vue", + "src/components/search-result-title/SearchResultTitle.vue", + "src/components/progress-bar/ProgressBar.vue", + "src/composables/useWarnOnce.ts", + "src/composables/useIntersectionObserver.ts", + "src/components/button/Button.vue", + "_useIconOnlyButton.js", + "_useSlotContents2.js", + "src/components/text-input/TextInput.vue", + "src/composables/useModelWrapper.ts", + "src/composables/useFieldData.ts", + "src/composables/useComputedDisabled.ts" + ], + "isEntry": true, + "src": "src/components/typeahead-search/TypeaheadSearch.vue" + }, + "src/composables/useComputedDirection.ts": { + "file": "useComputedDirection.js", + "isEntry": true, + "src": "src/composables/useComputedDirection.ts" + }, + "src/composables/useComputedDisabled.ts": { + "file": "useComputedDisabled.js", + "imports": [ + "_constants.js" + ], + "isEntry": true, + "src": "src/composables/useComputedDisabled.ts" + }, + "src/composables/useComputedLanguage.ts": { + "file": "useComputedLanguage.js", + "isEntry": true, + "src": "src/composables/useComputedLanguage.ts" + }, + "src/composables/useFieldData.ts": { + "file": "useFieldData.js", + "imports": [ + "src/composables/useComputedDisabled.ts", + "_constants.js" + ], + "isEntry": true, + "src": "src/composables/useFieldData.ts" + }, + "src/composables/useFloatingMenu.ts": { + "file": "useFloatingMenu.js", + "isEntry": true, + "src": "src/composables/useFloatingMenu.ts" + }, + "src/composables/useGeneratedId.ts": { + "file": "useGeneratedId.js", + "imports": [ + "_constants.js" + ], + "isEntry": true, + "src": "src/composables/useGeneratedId.ts" + }, + "src/composables/useIntersectionObserver.ts": { + "file": "useIntersectionObserver.js", + "isEntry": true, + "src": "src/composables/useIntersectionObserver.ts" + }, + "src/composables/useModelWrapper.ts": { + "file": "useModelWrapper.js", + "isEntry": true, + "src": "src/composables/useModelWrapper.ts" + }, + "src/composables/useResizeObserver.ts": { + "file": "useResizeObserver.js", + "isEntry": true, + "src": "src/composables/useResizeObserver.ts" + }, + "src/composables/useSlotContents.ts": { + "file": "useSlotContents.js", + "imports": [ + "_useSlotContents2.js" + ], + "isEntry": true, + "src": "src/composables/useSlotContents.ts" + }, + "src/composables/useSplitAttributes.ts": { + "file": "useSplitAttributes.js", + "isEntry": true, + "src": "src/composables/useSplitAttributes.ts" + }, + "src/composables/useWarnOnce.ts": { + "file": "useWarnOnce.js", + "isEntry": true, + "src": "src/composables/useWarnOnce.ts" + } +}
\ No newline at end of file diff --git a/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/useComputedDirection.js b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/useComputedDirection.js new file mode 100644 index 000000000000..3ba3b43d2d0d --- /dev/null +++ b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/useComputedDirection.js @@ -0,0 +1 @@ +"use strict";const u=require("vue");function o(n){const t=u.ref(null);return u.onMounted(()=>{const e=window.getComputedStyle(n.value).direction;t.value=e==="ltr"||e==="rtl"?e:null}),t}module.exports=o; diff --git a/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/useComputedLanguage.js b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/useComputedLanguage.js new file mode 100644 index 000000000000..95a40103c34c --- /dev/null +++ b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/useComputedLanguage.js @@ -0,0 +1 @@ +"use strict";const t=require("vue");function a(u){const n=t.ref("");return t.onMounted(()=>{let e=u.value;for(;e&&e.lang==="";)e=e.parentElement;n.value=e?e.lang:null}),n}module.exports=a; diff --git a/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/useIconOnlyButton.js b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/useIconOnlyButton.js new file mode 100644 index 000000000000..d03b042e4ca0 --- /dev/null +++ b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/useIconOnlyButton.js @@ -0,0 +1 @@ +"use strict";const i=require("vue"),n=require("./useSlotContents.js"),c=require("./useWarnOnce.js");function l(u,t,r){const o=i.computed(()=>{const s=n.useSlotContents(u);if(s.length!==1)return!1;const e=s[0];return!!(typeof e=="object"&&(n.isComponentVNode(e,"CdxIcon")||n.isTagVNode(e,"svg")))});return c.useWarnOnce(()=>o.value&&!t["aria-label"]&&!t["aria-hidden"],"".concat(r,": Icon-only buttons require one of the following attributes: aria-label or aria-hidden. See documentation at https://doc.wikimedia.org/codex/latest/components/demos/button.html#icon-only-button")),o}exports.useIconOnlyButton=l; diff --git a/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/useModelWrapper.js b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/useModelWrapper.js new file mode 100644 index 000000000000..8a698b8dd1c5 --- /dev/null +++ b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/useModelWrapper.js @@ -0,0 +1 @@ +"use strict";const o=require("vue");function p(e,u,r){return o.computed({get:()=>e.value,set:t=>u(r||"update:modelValue",t)})}exports.useModelWrapper=p; diff --git a/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/useSlotContents.js b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/useSlotContents.js new file mode 100644 index 000000000000..4b2d2408fe11 --- /dev/null +++ b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/useSlotContents.js @@ -0,0 +1 @@ +"use strict";const o=require("vue");function r(e){const t=[];for(const n of e)typeof n.type=="string"||typeof n.type=="object"?t.push(n):n.type!==o.Comment&&(typeof n.children=="string"&&n.children.trim()!==""?t.push(n.children):Array.isArray(n.children)&&t.push(...r(n.children)));return t}function i(e,t){return typeof e.type=="object"&&"name"in e.type?t!==void 0?e.type.name===t:!0:!1}function s(e,t){return typeof e.type=="string"?t!==void 0?e.type===t.toLowerCase():!0:!1}function f(e){const t=typeof e=="function"?e():e;return t?r(t):[]}exports.isComponentVNode=i;exports.isTagVNode=s;exports.useSlotContents=f; diff --git a/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/useSlotContents2.js b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/useSlotContents2.js new file mode 100644 index 000000000000..4b2d2408fe11 --- /dev/null +++ b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/useSlotContents2.js @@ -0,0 +1 @@ +"use strict";const o=require("vue");function r(e){const t=[];for(const n of e)typeof n.type=="string"||typeof n.type=="object"?t.push(n):n.type!==o.Comment&&(typeof n.children=="string"&&n.children.trim()!==""?t.push(n.children):Array.isArray(n.children)&&t.push(...r(n.children)));return t}function i(e,t){return typeof e.type=="object"&&"name"in e.type?t!==void 0?e.type.name===t:!0:!1}function s(e,t){return typeof e.type=="string"?t!==void 0?e.type===t.toLowerCase():!0:!1}function f(e){const t=typeof e=="function"?e():e;return t?r(t):[]}exports.isComponentVNode=i;exports.isTagVNode=s;exports.useSlotContents=f; diff --git a/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/useWarnOnce.js b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/useWarnOnce.js new file mode 100644 index 000000000000..3fd4aab04768 --- /dev/null +++ b/tests/phpunit/data/resourceloader/codex-devmode/packages/codex/dist/modules/useWarnOnce.js @@ -0,0 +1 @@ +"use strict";const n=require("vue");function u(r,t){if(r()){n.warn(t);return}const c=n.watch(r,e=>{e&&(n.warn(t),c())})}exports.useWarnOnce=u; diff --git a/tests/phpunit/data/resourceloader/codex/codex.style.css b/tests/phpunit/data/resourceloader/codex/codex.style.css new file mode 100644 index 000000000000..8718496a546a --- /dev/null +++ b/tests/phpunit/data/resourceloader/codex/codex.style.css @@ -0,0 +1 @@ +/* Placeholder file for tests */
\ No newline at end of file |