What is a modal?
- Putting the application into a new mode, without losing context of where you currently are (UI, URL, data loaded, etc)
What is a dialog?
- alert see below
What is a modal-dialog?
- A dialog inside a modal.
| // Typescript Generics | |
| class MyMap<T extends Error> { | |
| value: T; | |
| getVal() { | |
| return this.value; | |
| } | |
| constructor(val: T) { |
| let failingTests = []; | |
| const testElements = document.querySelectorAll('li[id].fail'); | |
| testElements.forEach(test => { | |
| const moduleName = test.getElementsByClassName('module-name')[0].textContent | |
| const testName = test.getElementsByClassName('test-name')[0].textContent | |
| failingTests.push(`- [ ] ${moduleName} ${testName}`) | |
| }); | |
| console.log(failingTests.join('\n')); |
| #!/bin/bash | |
| echo "Updating Template Path Reference..." | |
| sed -ie "s+./template+../templates/components/$1+g" "addon/components/${1}/component.js" | |
| rm addon/components/"${1}"/component.jse | |
| echo "Migrating component $1 back to classic structure..." | |
| git mv "addon/components/${1}/component.js" "addon/components/${1}.js" | |
| git mv "addon/components/${1}/template.hbs" "addon/templates/components/${1}.hbs" |
| let slowTests = []; | |
| const testElements = document.querySelectorAll('li[id].pass'); | |
| const tolerance = 1500; | |
| testElements.forEach(test => { | |
| const moduleName = test.getElementsByClassName('module-name')[0].textContent | |
| const testName = test.getElementsByClassName('test-name')[0].textContent | |
| const testDurationString = test.getElementsByClassName('runtime')[0].textContent | |
| const testDuration = parseInt(testDurationString.slice(0, -3)) |
| import { module, test } from "qunit"; | |
| import { setupRenderingTest } from "ember-qunit"; | |
| import { render, typeIn, triggerKeyEvent } from "@ember/test-helpers"; | |
| import hbs from "htmlbars-inline-precompile"; | |
| module( | |
| "Integration | Component | data-properties-panel/custom-property-form", | |
| function(hooks) { | |
| setupRenderingTest(hooks); |
| atom-text-editor.editor { | |
| /* | |
| Transform selected text into alternative font for elegant touch: | |
| - this | |
| - HTML and JSX attributes | |
| - JS functions (except arrow function) | |
| - JS undefined | |
| - JS storage (const/let/async) | |
| - EX constants | |
| - Ruby (nil/self/block) |
| import Ember from 'ember'; | |
| const { computed } = Ember; | |
| export default Ember.Component.extend({ | |
| tagName: 'ul', | |
| classNames: ['image-gallery'], | |
| classNameBindings: ['modifier'], | |
| modifier: null, | |
| import EmberTooltipComponent from 'ember-tooltips/components/ember-tooltip'; | |
| import { run } from '@ember/runloop'; | |
| import $ from 'jquery'; | |
| export default EmberTooltipComponent.extend({ | |
| _hideTooltip() { | |
| const _tooltip = this.get('_tooltip'); | |
| if (!_tooltip || this.get('isDestroying')) { | |
| return; |
| import Ember from 'ember'; | |
| const { computed } = Ember; | |
| export default Ember.Controller.extend({ | |
| appName: 'Ember Sum Twiddle', | |
| requiredPhotosCount: 1, | |
| requiredBlogsCount: 1, | |
| requiredVideosCount: 1, | |
| acceptedPhotosCount: 1, | |
| acceptedBlogsCount: 1, |