Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
49 commits
Select commit Hold shift + click to select a range
8434475
Baseline compatibilty
brianjhanson Mar 24, 2026
097d174
Cleaning up a bit
brianjhanson Mar 24, 2026
83416e6
Stop some style bleeding
brianjhanson Mar 24, 2026
ab86773
Fix legacy pages
brianjhanson Mar 25, 2026
666adaf
Minor styling updates
brianjhanson Mar 25, 2026
107b8e2
Clean up types
brianjhanson Mar 25, 2026
20d9995
Apply reset to `.menu--disclosure`
brianjhanson Mar 25, 2026
df32f7d
Ensure global Craft variable is defined
brianjhanson Mar 25, 2026
31590f9
Minor styling updates
brianjhanson Mar 25, 2026
ec083ba
POST request success
brianjhanson Mar 25, 2026
8efc0a0
Merge branch '6.x' into feature/js-compat
brianjhanson Mar 26, 2026
a941d86
Add reset class to legacy templates
brianjhanson Mar 27, 2026
109abd4
Update EntryTypeSelect.vue
brianjhanson Mar 30, 2026
ae44904
Use an EntryTypeResource
brianjhanson Mar 31, 2026
dc84db2
Prefix classes with .cp
brianjhanson Mar 31, 2026
c82b018
Ignore `craft-icon` and `slot` from namespacing
brianjhanson Mar 31, 2026
72ae3b0
Remove resource wrap by default
brianjhanson Mar 31, 2026
10e5020
Show overrides properly on form
brianjhanson Apr 1, 2026
6a729c4
Merge branch '6.x' into feature/js-compat
brianjhanson Apr 1, 2026
f39082f
Fix prettier
brianjhanson Apr 1, 2026
52f6e91
Merge branch '6.x' into feature/js-compat
brianjhanson Apr 7, 2026
4c55ced
Contain legacy styles
brianjhanson Apr 7, 2026
9dbdc37
Update tooltip styles a bit
brianjhanson Apr 7, 2026
d7c2b46
Working through EntryTyper overrides
brianjhanson Apr 7, 2026
db76f1d
Working Entry Type selection
brianjhanson Apr 7, 2026
b5a1342
A little janky, but it works
brianjhanson Apr 7, 2026
3a376b8
Handle more complex icons
brianjhanson Apr 7, 2026
d097371
Remove bespoke flex utility
brianjhanson Apr 8, 2026
7f3f1c9
Initial drag and drop on entryTypeSelect component
brianjhanson Apr 8, 2026
e6937bf
Remove debug styles
brianjhanson Apr 8, 2026
6ed3ac9
Add legacy styles
brianjhanson Apr 8, 2026
1872a02
Build assets
brianjhanson Apr 8, 2026
f5bf87c
Rebuild cp asset
brianjhanson Apr 8, 2026
6dcb9fa
Merge branch '6.x' of github.com:craftcms/cms into feature/js-compat
brianjhanson Apr 8, 2026
70fe939
Add tests
brianjhanson Apr 8, 2026
6e636d5
cp-colorable -> cp-color
brianjhanson Apr 8, 2026
24a2f5b
Rework color tokens a bit
brianjhanson Apr 8, 2026
51599bb
Add dom.ts tests
brianjhanson Apr 8, 2026
3729bed
Move menu styles out of the cp-legacy class
brianjhanson Apr 8, 2026
927517a
Paint over javascript error for now
brianjhanson Apr 8, 2026
166b9b2
Fix the HUD styling
brianjhanson Apr 8, 2026
d59880e
Fix test
brianjhanson Apr 8, 2026
a32abd8
EntryTypeResource cleanup
brianjhanson Apr 8, 2026
d4f68f4
Fix icon picker
brianjhanson Apr 8, 2026
2f4c874
Cleanup markup
brianjhanson Apr 8, 2026
0009aa9
Cleanup
brianjhanson Apr 8, 2026
256d070
Deleted _variables.scss a bit too early
brianjhanson Apr 8, 2026
4813932
Build
brianjhanson Apr 8, 2026
9b74009
Fix login
brianjhanson Apr 9, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
32 changes: 13 additions & 19 deletions packages/craftcms-cp/scripts/generate-colors.js
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,17 @@ const availableColors = [
'black',
];

const semanticColors = [
// Semantic colors
'neutral',
'brand',
'accent',
'info',
'success',
'warning',
'danger',
];

function lightScale(color) {
switch (color) {
case 'white':
Expand Down Expand Up @@ -136,7 +147,7 @@ function buildTokens(colors, scaleFn) {
}

function buildStyleBlock(color) {
return `.c-colorable--${color},
return `.cp-color-${color},
[data-color='${color}'] {
--c-color-fill-quiet: var(--c-color-${color}-fill-quiet);
--c-color-border-quiet: var(--c-color-${color}-border-quiet);
Expand All @@ -161,24 +172,7 @@ ${buildTokens(colors, lightScale)}
${buildTokens(colors, darkScale)}
}

.c-colorable,
[data-color] {
--c-color-fill-quiet: var(--c-color-neutral-fill-quiet);
--c-color-fill-normal: var(--c-color-neutral-fill-normal);
--c-color-fill-loud: var(--c-color-neutral-fill-loud);
--c-color-border-quiet: var(--c-color-neutral-border-quiet);
--c-color-border-normal: var(--c-color-neutral-border-normal);
--c-color-border-loud: var(--c-color-neutral-border-loud);
--c-color-on-quiet: var(--c-color-neutral-on-quiet);
--c-color-on-normal: var(--c-color-neutral-on-normal);
--c-color-on-loud: var(--c-color-neutral-on-loud);

background-color: var(--c-color-fill-quiet);
border-color: var(--c-color-border-quiet);
color: var(--c-color-on-quiet);
}

${colors.map((c) => buildStyleBlock(c)).join('\n')}
${[...availableColors, ...semanticColors].map((c) => buildStyleBlock(c)).join('\n')}
`;
}

Expand Down
2 changes: 2 additions & 0 deletions packages/craftcms-cp/src/components/button/button.ts
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,8 @@ export default class CraftButton extends LionButtonSubmit {

override render() {
return html`
<!--@TODO need to figure this out-->
<!--<div role="status" class="sr-only"></div>-->
<div
class="${classMap({
'button-content': true,
Expand Down
29 changes: 14 additions & 15 deletions packages/craftcms-cp/src/components/chip/chip.styles.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ export default css`
display: contents;
}

.chip {
.cp-chip {
display: inline-flex;
min-height: var(--c-chip-height, var(--c-size-control-sm));
min-width: auto;
Expand All @@ -26,51 +26,50 @@ export default css`
background-color: var(--c-color-fill-quiet, var(--c-surface-raised));
}

.chip[appearance='plain'],
.chip--plain {
.cp-chip[appearance='plain'],
.cp-chip--plain {
padding-block: 0;
padding-inline: 0;
border-color: transparent;
background-color: transparent;
box-shadow: none;
}

.chip[size='small'],
.chip--small {
.cp-chip[size='small'],
.cp-chip--small {
padding-block: 0;
min-height: var(--c-size-control-sm);
}

chip[size='medium'],
.chip--medium {
.cp-chip[size='medium'],
.cp-chip--medium {
padding-block: 0;
min-height: var(--c-size-control-md);
}

.chip__prefix,
.chip__body,
.chip__suffix {
.cp-chip__prefix,
.cp-chip__body,
.cp-chip__suffix {
display: inline-flex;
flex-direction: column;
align-self: center;
}

.chip__body {
.cp-chip__body {
flex: 1 1 auto;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}

.chip__prefix {
.cp-chip__prefix {
padding-inline-end: var(--c-spacing-md);
}

.chip__suffix {
.cp-chip__suffix {
padding-inline-start: var(--c-spacing-md);
}

:host(:not([variant='plain'])) .chip__suffix {
:host(:not([variant='plain'])) .cp-chip__suffix {
margin-inline-end: calc(var(--c-spacing-sm) * -1);
}
`;
29 changes: 17 additions & 12 deletions packages/craftcms-cp/src/components/chip/chip.ts
Original file line number Diff line number Diff line change
Expand Up @@ -29,37 +29,42 @@ export default class CraftChip extends LitElement {
@property() icon: string | null = null;

renderPrefix() {
return html`<div class="chip__prefix" part="prefix">
return html`<div class="cp-chip__prefix" part="prefix">
<slot name="prefix">
${this.icon
? html`<craft-icon name="${this.icon}"></craft-icon>`
: nothing}
<slot name="icon">
${this.icon
? html`<craft-icon name="${this.icon}"></craft-icon>`
: nothing}
</slot>
</slot>
</div>`;
}

override render() {
// query the element Light DOM children for slotted elements
const renderPrefix = !!this.querySelector('[slot="prefix"]') || this.icon;
const renderPrefix =
!!this.querySelector('[slot="prefix"]') ||
!!this.querySelector('[slot="icon"]') ||
this.icon;
const renderSuffix = !!this.querySelector('[slot="suffix"]');

return html`
<div
part="chip"
class="${classMap({
chip: true,
'chip--small': this.size === 'small',
'chip--medium': this.size === 'medium',
'chip--large': this.size === 'large',
'chip--plain': this.variant === 'plain',
'cp-chip': true,
'cp-chip--small': this.size === 'small',
'cp-chip--medium': this.size === 'medium',
'cp-chip--large': this.size === 'large',
'cp-chip--plain': this.variant === 'plain',
})}"
>
${renderPrefix ? this.renderPrefix() : nothing}
<div class="chip__body">
<div class="cp-chip__body">
<slot></slot>
</div>
${renderSuffix
? html`<div class="chip__suffix" part="suffix">
? html`<div class="cp-chip__suffix" part="suffix">
<slot name="suffix"></slot>
</div>`
: nothing}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,11 +24,11 @@ const meta = {
}

return html`
<craft-tooltip
<c-tooltip
placement="${args.placement}"
style="${args.style}"
for="my-button"
>${args.content}</craft-tooltip
>${args.content}</c-tooltip
>
<craft-button id="my-button">Hover me</craft-button>
`;
Expand Down
39 changes: 16 additions & 23 deletions packages/craftcms-cp/src/components/tooltip/tooltip.ts
Original file line number Diff line number Diff line change
Expand Up @@ -12,37 +12,30 @@ export default class CraftTooltip extends WaTooltip {
return [
WaTooltip.styles,
css`
wa-popup {
--wa-z-index-tooltip: var(--c-tooltip-z-index, 1000);
--wa-tooltip-background-color: var(
--c-tooltip-fill,
var(--c-surface-overlay)
);
--wa-tooltip-border-color: var(
--c-tooltip-border,
var(--c-color-neutral-border-quiet)
);
--wa-tooltip-content-color: var(--c-tooltip-text, currentColor);
:host {
--wa-tooltip-background-color: var(--c-color-black-fill-loud);
--wa-tooltip-border-color: var(--c-color-black-border-loud);
--wa-tooltip-content-color: var(--c-color-black-on-loud);
--wa-tooltip-padding: var(
--c-tooltip-padding,
calc(4rem / 16) calc(8rem / 16)
);
--wa-tooltip-arrow-size: var(--c-tooltip-arrow-size, 5px);
--wa-tooltip-font-family: inherit;
--wa-tooltip-font-size: var(
--c-tooltip-font-size,
var(--c-text-base)
);
--wa-tooltip-font-weight: var(--c-tooltip-font-weight, 400);
--wa-tooltip-line-height: var(--c-tooltip-line-height, 1.3);
--wa-tooltip-border-radius: var(
--c-tooltip-border-radius,
var(--c-radius-sm)
);
font-weight: 400;
color: var(--c-tooltip-text, currentColor);
--wa-tooltip-font-size: var(--c-text-base);
--wa-tooltip-font-weight: 400;
--wa-tooltip-line-height: 1.3;
--wa-tooltip-border-radius: var(--c-radius-sm);
}

&::part(base) {
box-shadow: var(--c-shadow-md);
}

.body {
color: var(--wa-tooltip-content-color);
font-weight: var(--wa-tooltip-font-weight);
}
`,
];
}
Expand Down
1 change: 1 addition & 0 deletions packages/craftcms-cp/src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,7 @@ export * from './utilities/format.js';
export * from './utilities/api/actionClient.js';
export * from './utilities/api/apiClient.js';
export * from './utilities/string.js';
export * from './utilities/dom.js';

// Services
export {QueueService} from './services/Queue.js';
Expand Down
18 changes: 13 additions & 5 deletions packages/craftcms-cp/src/styles/shared/base.css
Original file line number Diff line number Diff line change
Expand Up @@ -40,21 +40,29 @@ ul {
list-style: none;
}

.code {
font-size: 0.9em;
.cp-code {
font-size: 0.75em;
font-family: var(--c-font-mono);
display: inline-flex;
padding: 0 var(--c-spacing-sm);
border: 1px solid rgba(0, 0, 0, 0.2);
background-color: rgba(0, 0, 0, 0.05);
color: var(--c-color-on-quiet);
border: 1px solid var(--c-color-border-quiet);
background-color: color-mix(
var(--c-color-fill-quiet) 90%,
var(--c-color-fill-loud)
);
border-radius: var(--c-radius-sm);
}

hr {
display: block;
width: 100%;
border: 0;
border-top: 1px solid var(--c-color-neutral-border-quiet);
height: 0;
border-block-start: 1px solid var(--c-color-neutral-border-quiet);
margin-block: var(--c-spacing-lg);
margin-inline: 0;
color: transparent;
}

.index-grid {
Expand Down
Loading
Loading