-
Notifications
You must be signed in to change notification settings - Fork 5
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #246 from CrowdStrike/template-tag-gts
- Loading branch information
Showing
130 changed files
with
4,740 additions
and
4,582 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
--- | ||
'@crowdstrike/ember-toucan-core': patch | ||
'@crowdstrike/ember-toucan-form': patch | ||
--- | ||
|
||
(internal) Updated both packages to use the `<template>` tag and `gts` file extension. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,23 @@ | ||
'use strict'; | ||
|
||
module.exports = { | ||
plugins: ['prettier-plugin-ember-template-tag'], | ||
singleQuote: true, | ||
templateSingleQuote: false, | ||
// this was required to make the VSCode + Prettier work correctly with <template>, see https://github.com/gitKrystan/prettier-plugin-ember-template-tag/issues/38 | ||
// we should roll this back once that issue has been fixed! | ||
overrides: [ | ||
{ | ||
files: '*.gjs', | ||
options: { | ||
parser: 'ember-template-tag', | ||
}, | ||
}, | ||
{ | ||
files: '*.gts', | ||
options: { | ||
parser: 'ember-template-tag', | ||
}, | ||
}, | ||
], | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
18 changes: 18 additions & 0 deletions
18
packages/ember-toucan-core/src/-private/components/control.gts
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
import type { TemplateOnlyComponent } from '@ember/component/template-only'; | ||
|
||
export interface ToucanFormControlComponentSignature { | ||
Element: HTMLDivElement; | ||
Args: {}; | ||
Blocks: { | ||
default: []; | ||
}; | ||
} | ||
|
||
const ToucanCoreControlComponent: TemplateOnlyComponent<ToucanFormControlComponentSignature> = | ||
<template> | ||
<div ...attributes> | ||
{{yield}} | ||
</div> | ||
</template>; | ||
|
||
export default ToucanCoreControlComponent; |
3 changes: 0 additions & 3 deletions
3
packages/ember-toucan-core/src/-private/components/control.hbs
This file was deleted.
Oops, something went wrong.
11 changes: 0 additions & 11 deletions
11
packages/ember-toucan-core/src/-private/components/control.ts
This file was deleted.
Oops, something went wrong.
81 changes: 81 additions & 0 deletions
81
packages/ember-toucan-core/src/-private/components/error.gts
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,81 @@ | ||
import Component from '@glimmer/component'; | ||
import { assert } from '@ember/debug'; | ||
import { get } from '@ember/helper'; | ||
|
||
import type { ErrorMessage } from '../../-private/types'; | ||
|
||
export interface ToucanCoreErrorComponentSignature { | ||
Element: HTMLDivElement; | ||
Args: { | ||
/** | ||
* Provide a string or array of strings to this argument to render styled errors. | ||
*/ | ||
error?: ErrorMessage; | ||
}; | ||
Blocks: {}; | ||
} | ||
|
||
export default class ToucanCoreErrorComponent extends Component<ToucanCoreErrorComponentSignature> { | ||
/** | ||
* Used to help us determine if we should render a single error | ||
* or render a ul list of errors. | ||
*/ | ||
get hasMoreThanOneError() { | ||
return Array.isArray(this.args.error) && this.args.error?.length > 1; | ||
} | ||
|
||
get errors(): Array<string> { | ||
let { error } = this.args; | ||
|
||
assert( | ||
'"@error" must be either a string or an array of strings', | ||
typeof error === 'string' || Array.isArray(error), | ||
); | ||
|
||
if (typeof error === 'string') { | ||
return [error]; | ||
} | ||
|
||
return error; | ||
} | ||
|
||
<template> | ||
<div | ||
class="type-xs-tight text-critical mt-1.5 flex | ||
{{if this.hasMoreThanOneError 'items-start' 'items-center'}}" | ||
...attributes | ||
> | ||
<svg | ||
aria-hidden="true" | ||
class="mr-1" | ||
width="12" | ||
height="12" | ||
viewBox="0 0 12 12" | ||
fill="currentColor" | ||
> | ||
<path | ||
d="M6.02979 9.06006C6.58207 9.06006 7.02979 8.61234 7.02979 8.06006C7.02979 7.50777 6.58207 7.06006 6.02979 7.06006C5.4775 7.06006 5.02979 7.50777 5.02979 8.06006C5.02979 8.61234 5.4775 9.06006 6.02979 9.06006Z" | ||
/> | ||
<path d="M5.52979 3.12H6.52979V6.12H5.52979V3.12Z" /> | ||
<path | ||
fill-rule="evenodd" | ||
clip-rule="evenodd" | ||
d="M11.76 9.54L6.82003 0.48C6.47003 -0.16 5.42003 -0.16 5.07003 0.48L0.120026 9.54C-0.0499739 9.85 -0.0399739 10.22 0.140026 10.53C0.320026 10.84 0.640026 11.02 1.00003 11.02H10.89C11.25 11.02 11.57 10.84 11.75 10.53C11.93 10.22 11.94 9.85 11.77 9.54H11.76ZM1.00003 10.02L5.94003 0.96L10.88 10.02H1.00003Z" | ||
/> | ||
</svg> | ||
|
||
{{#if this.hasMoreThanOneError}} | ||
<ul class="m-0 list-none space-y-1.5 p-0"> | ||
{{#each this.errors as |error index|}} | ||
<li | ||
class="m-0 p-0 leading-3" | ||
data-error-item={{index}} | ||
>{{error}}</li> | ||
{{/each}} | ||
</ul> | ||
{{else}} | ||
<span>{{get this.errors 0}}</span> | ||
{{/if}} | ||
</div> | ||
</template> | ||
} |
34 changes: 0 additions & 34 deletions
34
packages/ember-toucan-core/src/-private/components/error.hbs
This file was deleted.
Oops, something went wrong.
40 changes: 0 additions & 40 deletions
40
packages/ember-toucan-core/src/-private/components/error.ts
This file was deleted.
Oops, something went wrong.
Oops, something went wrong.