Skip to content

Commit

Permalink
Merge pull request #1 from fleetbase/dev-main
Browse files Browse the repository at this point in the history
Dev main
  • Loading branch information
roncodes authored Jul 6, 2023
2 parents 8175e86 + be4161f commit 2771a47
Show file tree
Hide file tree
Showing 109 changed files with 16,524 additions and 367 deletions.
102 changes: 56 additions & 46 deletions .eslintrc.js
Original file line number Diff line number Diff line change
@@ -1,53 +1,63 @@
'use strict';

module.exports = {
root: true,
parser: 'babel-eslint',
parserOptions: {
ecmaVersion: 2018,
sourceType: 'module',
ecmaFeatures: {
legacyDecorators: true,
root: true,
parser: 'babel-eslint',
parserOptions: {
ecmaVersion: 2018,
sourceType: 'module',
ecmaFeatures: {
legacyDecorators: true,
},
},
},
plugins: ['ember'],
extends: [
'eslint:recommended',
'plugin:ember/recommended',
'plugin:prettier/recommended',
],
env: {
browser: true,
},
rules: {},
overrides: [
// node files
{
files: [
'./.eslintrc.js',
'./.prettierrc.js',
'./.template-lintrc.js',
'./ember-cli-build.js',
'./index.js',
'./testem.js',
'./blueprints/*/index.js',
'./config/**/*.js',
'./tests/dummy/config/**/*.js',
],
parserOptions: {
sourceType: 'script',
},
env: {
browser: false,
node: true,
},
plugins: ['node'],
extends: ['plugin:node/recommended'],
plugins: ['ember'],
extends: ['eslint:recommended', 'plugin:ember/recommended', 'plugin:prettier/recommended'],
env: {
browser: true,
},
{
// test files
files: ['tests/**/*-test.{js,ts}'],
extends: ['plugin:qunit/recommended'],
rules: {
'ember/no-array-prototype-extensions': 'off',
'ember/no-computed-properties-in-native-classes': 'off',
'ember/no-controller-access-in-routes': 'off',
'ember/no-empty-glimmer-component-classes': 'off',
'ember/no-get': 'off',
'ember/classic-decorator-no-classic-methods': 'off',
'no-prototype-builtins': 'off',
'node/no-unpublished-require': [
'error',
{
allowModules: ['resolve'],
},
],
},
],
overrides: [
// node files
{
files: [
'./.eslintrc.js',
'./.prettierrc.js',
'./.template-lintrc.js',
'./ember-cli-build.js',
'./index.js',
'./testem.js',
'./blueprints/*/index.js',
'./config/**/*.js',
'./tests/dummy/config/**/*.js',
],
parserOptions: {
sourceType: 'script',
},
env: {
browser: false,
node: true,
},
plugins: ['node'],
extends: ['plugin:node/recommended'],
},
{
// test files
files: ['tests/**/*-test.{js,ts}'],
extends: ['plugin:qunit/recommended'],
},
],
};
116 changes: 51 additions & 65 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -1,79 +1,65 @@
name: CI
name: Ember CI

on:
push:
branches:
- main
- master
pull_request: {}

concurrency:
group: ci-${{ github.head_ref || github.ref }}
cancel-in-progress: true
branches: [ main ]
tags:
- 'v*'
pull_request:
branches: [ main ]

jobs:
test:
name: "Tests"
build:
runs-on: ubuntu-latest
timeout-minutes: 10

strategy:
matrix:
node-version: [16.x] # Build on Node.js 16

steps:
- uses: actions/checkout@v3
- name: Install Node
uses: actions/setup-node@v3
with:
node-version: 14.x
cache: yarn
- name: Install Dependencies
run: yarn install --frozen-lockfile
- name: Lint
run: yarn lint
- name: Run Tests
run: yarn test:ember
- uses: actions/checkout@v2

floating:
name: "Floating Dependencies"
runs-on: ubuntu-latest
timeout-minutes: 10
- name: Setup Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v2
with:
node-version: ${{ matrix.node-version }}

steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: 14.x
cache: yarn
- name: Install Dependencies
run: yarn install --no-lockfile
- name: Run Tests
run: yarn test:ember
- name: Setup pnpm
uses: pnpm/action-setup@v2.0.1
with:
version: latest

try-scenarios:
name: ${{ matrix.try-scenario }}
runs-on: ubuntu-latest
needs: "test"
timeout-minutes: 10
- name: Install Dependencies
run: pnpm install

strategy:
fail-fast: false
matrix:
try-scenario:
- ember-lts-3.24
- ember-lts-3.28
- ember-release
- ember-beta
- ember-canary
- ember-classic
- embroider-safe
- embroider-optimized
- name: Build
run: pnpm run build

npm_publish:
needs: build
runs-on: ubuntu-latest
if: startsWith(github.ref, 'refs/tags/')
steps:
- uses: actions/checkout@v3
- name: Install Node
uses: actions/setup-node@v3
with:
node-version: 14.x
cache: yarn
- name: Install Dependencies
run: yarn install --frozen-lockfile
- name: Run Tests
run: ./node_modules/.bin/ember try:one ${{ matrix.try-scenario }}
- uses: actions/checkout@v2

- name: Setup Node.js 16.x
uses: actions/setup-node@v2
with:
node-version: 16.x

- name: Setup pnpm
uses: pnpm/action-setup@v2.0.1
with:
version: latest

- name: Install Dependencies
run: pnpm install

- name: Build
run: pnpm run build

- name: Set up npm
run: echo "//registry.npmjs.org/:_authToken=${{ secrets.NPM_AUTH_TOKEN }}" > ~/.npmrc

- name: Publish
run: npm publish --access public
14 changes: 13 additions & 1 deletion .prettierrc.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,17 @@
'use strict';

module.exports = {
singleQuote: true,
trailingComma: 'es5',
tabWidth: 4,
semi: true,
singleQuote: true,
printWidth: 190,
overrides: [
{
files: '*.hbs',
options: {
singleQuote: false,
},
},
],
};
10 changes: 9 additions & 1 deletion .template-lintrc.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,13 @@
'use strict';

module.exports = {
extends: 'recommended',
extends: 'recommended',
rules: {
'no-invalid-interactive': 'off',
'no-yield-only': 'off',
'no-down-event-binding': 'off',
'table-groups': 'off',
'link-href-attributes': 'off',
'require-input-label': 'off',
},
};
41 changes: 41 additions & 0 deletions addon/components/modals/group-details.hbs
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
<Modal::Default @modalIsOpened={{@modalIsOpened}} @options={{@options}} @confirm={{@onConfirm}} @decline={{@onDecline}}>
<div class="modal-body-container">
<div class="grid grid-cols-3 gap-2 text-xs dark:text-gray-100">
<div class="col-span-3 mb-5">
<label class="block mb-2 font-bold">
Group Name
</label>
<span class="block truncate">
{{n-a @options.group.name}}
</span>
</div>

<div class="mb-5">
<label class="block mb-2 font-bold">
Members
</label>
<span class="block truncate">
{{n-a @options.user.internal_id}}
</span>
</div>

<div class="mb-5">
<label class="block mb-2 font-bold">
Status
</label>
<Badge @status={{@options.vendor.status}} />
</div>

<div class="col-span-1"></div>

<div class="col-span-2 mb-5">
<label class="block mb-2 font-bold">
Address
</label>
<div>
{{n-a (html-safe @options.vendor.address)}}
</div>
</div>
</div>
</div>
</Modal::Default>
55 changes: 55 additions & 0 deletions addon/components/modals/group-form.hbs
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
<Modal::Default @modalIsOpened={{@modalIsOpened}} @options={{@options}} @confirm={{@onConfirm}} @decline={{@onDecline}}>
<div class="modal-body-container">
<div class="text-xs dark:text-gray-100">
<div class="input-group">
<label>
Group Name
</label>
<Input @value={{@options.group.name}} @type="text" class="w-full form-input" placeholder="Group Name" />
</div>
<div class="input-group">
<label>
Group Description
</label>
<Textarea @value={{@options.group.description}} rows="5" class="w-full form-input" placeholder="Group Description" />
</div>

<div class="input-group">
<div class="mb-4">
<InputLabel class="mb-2" @labelText="Select users to add to group" @helpText="Search and select users to add to this group." />

<div class="flex items-start justify-between">
<ModelSelect @modelName="user" @selectedModel={{@options.lastSelectedUser}} @placeholder="Select user to add to group" class="w-64" @triggerClass="form-select form-input" @infiniteScroll={{false}} @renderInPlace={{true}} @onChange={{@options.addUser}} as |model|>
{{model.name}}
</ModelSelect>
</div>
</div>
<div class="h-48 overflow-y-scroll bg-white border border-gray-200 rounded shadow-sm dark:bg-gray-800 dark:border-gray-900">
{{#if @options.group.users}}
{{#each @options.group.users as |user|}}
<div class="flex items-center justify-between p-3 text-sm text-gray-800 border-b border-gray-200 dark:border-gray-900 dark:text-gray-100">
<span>
{{user.name}}
</span>
<span>
<a href="javascript:;" class="text-blue-300 no-underline hover:text-blue-500" {{on "click" (fn
@options.removeUser user)}}>
<FaIcon @icon="times" @prefix="fas" />
</a>
</span>
</div>
{{/each}}
{{else}}
<div class="flex items-center justify-center h-full dark:text-gray-100">
<div class="flex flex-col items-center justify-center w-2/4 h-full my-8 text-center">
<div class="text-base font-semibold">
No users added to group
</div>
</div>
</div>
{{/if}}
</div>
</div>
</div>
</div>
</Modal::Default>
22 changes: 22 additions & 0 deletions addon/components/modals/policy-form.hbs
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
<Modal::Default @modalIsOpened={{@modalIsOpened}} @options={{@options}} @confirm={{@onConfirm}} @decline={{@onDecline}}>
<div class="modal-body-container" ...attributes>
<div class="input-group">
<label>
Policy Name
</label>
<Input @value={{@options.policy.name}} @type="text" class="w-full form-input" placeholder="Enter a name for your policy" />
</div>
<div class="input-group">
<label>
Policy Description
</label>
<Input @value={{@options.policy.description}} @type="text" class="w-full form-input" placeholder="Enter a description for your policy" />
</div>
<div class="input-group">
<label>
Select Permissions
</label>
<PermissionPicker @selected={{@options.policy.permissions}} @onChange={{fn (mut @options.policy.permissions)}} />
</div>
</div>
</Modal::Default>
Loading

0 comments on commit 2771a47

Please sign in to comment.